* linux-next: s390 build failure @ 2008-06-20 3:52 Stephen Rothwell 2008-06-20 7:58 ` Cornelia Huck 0 siblings, 1 reply; 18+ messages in thread From: Stephen Rothwell @ 2008-06-20 3:52 UTC (permalink / raw) To: Greg KH; +Cc: Cornelia Huck, linux-next, Martin Schwidefsky [-- Attachment #1: Type: text/plain, Size: 658 bytes --] Hi Greg, Cornelia, Yesterday's (and back to next-20080612) linux-next build (s390 allnoconfig (and others) with an s390s compiler) fails with this error: drivers/s390/cio/cio.c:573: error: 'struct device' has no member named 'init_name' Bisecting lead to the commit "s390: bus_id -> dev_set_name() changes" in the driver-core tree. I suspect this was caused by the removal of "driver core: add init_name to struct device" from the driver-core tree on June 11 (even though the former patch was earlier in the series then the latter). -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-20 3:52 linux-next: s390 build failure Stephen Rothwell @ 2008-06-20 7:58 ` Cornelia Huck 2008-06-23 15:22 ` Cornelia Huck 0 siblings, 1 reply; 18+ messages in thread From: Cornelia Huck @ 2008-06-20 7:58 UTC (permalink / raw) To: Stephen Rothwell; +Cc: Greg KH, linux-next, Martin Schwidefsky On Fri, 20 Jun 2008 13:52:57 +1000, Stephen Rothwell <sfr@canb.auug.org.au> wrote: > Bisecting lead to the commit "s390: bus_id -> dev_set_name() changes" in > the driver-core tree. I suspect this was caused by the removal of > "driver core: add init_name to struct device" from the driver-core tree > on June 11 (even though the former patch was earlier in the series then > the latter). Yes, this patch should go after the introduction of init_name (and be commented out in Greg's series file). I could also try to split out dev_set_name() conversion from the init_name stuff, but I fear that doesn't make much sense... ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-20 7:58 ` Cornelia Huck @ 2008-06-23 15:22 ` Cornelia Huck 2008-06-23 15:23 ` [PATCH] s390: bus_id -> dev_set_name() changes Cornelia Huck ` (2 more replies) 0 siblings, 3 replies; 18+ messages in thread From: Cornelia Huck @ 2008-06-23 15:22 UTC (permalink / raw) To: Greg KH; +Cc: Stephen Rothwell, linux-next, Martin Schwidefsky On Fri, 20 Jun 2008 09:58:43 +0200, Cornelia Huck <cornelia.huck@de.ibm.com> wrote: > I could also try to split out > dev_set_name() conversion from the init_name stuff, but I fear that > doesn't make much sense... Well, so I did just that... I'll reply to this mail with two patches: - "s390: bus_id -> dev_set_name() changes" should replace the patch of the same title. It removes the dependency on init_name. - "s390: bus_id -> dev_set_name() for css and ccw busses" should go after "driver core: add init_name to struct device". It depends on init_name and consequently should be commented out until that patch is re-activated. Greg: Could you please add these to your tree? ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH] s390: bus_id -> dev_set_name() changes 2008-06-23 15:22 ` Cornelia Huck @ 2008-06-23 15:23 ` Cornelia Huck 2008-06-23 15:24 ` [PATCH] s390: bus_id -> dev_set_name() for css and ccw busses Cornelia Huck 2008-06-23 22:13 ` linux-next: s390 build failure Greg KH 2 siblings, 0 replies; 18+ messages in thread From: Cornelia Huck @ 2008-06-23 15:23 UTC (permalink / raw) To: Greg KH; +Cc: Stephen Rothwell, linux-next, Martin Schwidefsky From: Cornelia Huck <cornelia.huck@de.ibm.com> Convert most s390 users setting bus_id to dev_set_name(). css and ccw busses are deferred since they need some special treatment. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> --- drivers/s390/block/dcssblk.c | 2 +- drivers/s390/char/vmlogrdr.c | 3 +-- drivers/s390/cio/ccwgroup.c | 3 +-- drivers/s390/cio/chp.c | 3 +-- drivers/s390/cio/css.c | 4 ++-- drivers/s390/crypto/ap_bus.c | 4 ++-- drivers/s390/net/netiucv.c | 2 +- drivers/s390/s390_rdev.c | 2 +- drivers/s390/scsi/zfcp_aux.c | 23 ++++++++--------------- 9 files changed, 18 insertions(+), 28 deletions(-) Index: linux-2.6/drivers/s390/block/dcssblk.c =================================================================== --- linux-2.6.orig/drivers/s390/block/dcssblk.c +++ linux-2.6/drivers/s390/block/dcssblk.c @@ -349,7 +349,7 @@ dcssblk_add_store(struct device *dev, st } strcpy(dev_info->segment_name, local_buf); - strlcpy(dev_info->dev.bus_id, local_buf, BUS_ID_SIZE); + dev_set_name(&dev_info->dev, local_buf); dev_info->dev.release = dcssblk_release_segment; INIT_LIST_HEAD(&dev_info->lh); Index: linux-2.6/drivers/s390/char/vmlogrdr.c =================================================================== --- linux-2.6.orig/drivers/s390/char/vmlogrdr.c +++ linux-2.6/drivers/s390/char/vmlogrdr.c @@ -738,8 +738,7 @@ static int vmlogrdr_register_device(stru dev = kzalloc(sizeof(struct device), GFP_KERNEL); if (dev) { - snprintf(dev->bus_id, BUS_ID_SIZE, "%s", - priv->internal_name); + dev_set_name(dev, priv->internal_name); dev->bus = &iucv_bus; dev->parent = iucv_root; dev->driver = &vmlogrdr_driver; Index: linux-2.6/drivers/s390/cio/ccwgroup.c =================================================================== --- linux-2.6.orig/drivers/s390/cio/ccwgroup.c +++ linux-2.6/drivers/s390/cio/ccwgroup.c @@ -264,8 +264,7 @@ int ccwgroup_create_from_string(struct d gdev->dev.parent = root; gdev->dev.release = ccwgroup_release; - snprintf (gdev->dev.bus_id, BUS_ID_SIZE, "%s", - dev_name(&gdev->cdev[0]->dev)); + dev_set_name(&gdev->dev, "%s", dev_name(&gdev->cdev[0]->dev)); rc = device_register(&gdev->dev); if (rc) Index: linux-2.6/drivers/s390/cio/chp.c =================================================================== --- linux-2.6.orig/drivers/s390/cio/chp.c +++ linux-2.6/drivers/s390/cio/chp.c @@ -401,8 +401,7 @@ int chp_new(struct chp_id chpid) chp->state = 1; chp->dev.parent = &channel_subsystems[chpid.cssid]->device; chp->dev.release = chp_release; - snprintf(chp->dev.bus_id, BUS_ID_SIZE, "chp%x.%02x", chpid.cssid, - chpid.id); + dev_set_name(&chp->dev, "chp%x.%02x", chpid.cssid, chpid.id); /* Obtain channel path description and fill it in. */ ret = chsc_determine_channel_path_description(chpid, &chp->desc); Index: linux-2.6/drivers/s390/cio/css.c =================================================================== --- linux-2.6.orig/drivers/s390/cio/css.c +++ linux-2.6/drivers/s390/cio/css.c @@ -741,7 +741,7 @@ static int __init setup_css(int nr) return -ENOMEM; css->pseudo_subchannel->dev.parent = &css->device; css->pseudo_subchannel->dev.release = css_subchannel_release; - sprintf(css->pseudo_subchannel->dev.bus_id, "defunct"); + dev_set_name(&css->pseudo_subchannel->dev, "defunct"); ret = cio_create_sch_lock(css->pseudo_subchannel); if (ret) { kfree(css->pseudo_subchannel); @@ -750,7 +750,7 @@ static int __init setup_css(int nr) mutex_init(&css->mutex); css->valid = 1; css->cssid = nr; - sprintf(css->device.bus_id, "css%x", nr); + dev_set_name(&css->device, "css%x", nr); css->device.release = channel_subsystem_release; tod_high = (u32) (get_clock() >> 32); css_generate_pgid(css, tod_high); Index: linux-2.6/drivers/s390/crypto/ap_bus.c =================================================================== --- linux-2.6.orig/drivers/s390/crypto/ap_bus.c +++ linux-2.6/drivers/s390/crypto/ap_bus.c @@ -859,8 +859,8 @@ static void ap_scan_bus(struct work_stru ap_dev->device.bus = &ap_bus_type; ap_dev->device.parent = ap_root_device; - snprintf(ap_dev->device.bus_id, BUS_ID_SIZE, "card%02x", - AP_QID_DEVICE(ap_dev->qid)); + dev_set_name(&ap_dev->device, "card%02x", + AP_QID_DEVICE(ap_dev->qid)); ap_dev->device.release = ap_device_release; rc = device_register(&ap_dev->device); if (rc) { Index: linux-2.6/drivers/s390/net/netiucv.c =================================================================== --- linux-2.6.orig/drivers/s390/net/netiucv.c +++ linux-2.6/drivers/s390/net/netiucv.c @@ -1757,7 +1757,7 @@ static int netiucv_register_device(struc IUCV_DBF_TEXT(trace, 3, __func__); if (dev) { - snprintf(dev->bus_id, BUS_ID_SIZE, "net%s", ndev->name); + dev_set_name(dev, "net%s", ndev->name); dev->bus = &iucv_bus; dev->parent = iucv_root; /* Index: linux-2.6/drivers/s390/s390_rdev.c =================================================================== --- linux-2.6.orig/drivers/s390/s390_rdev.c +++ linux-2.6/drivers/s390/s390_rdev.c @@ -30,7 +30,7 @@ s390_root_dev_register(const char *name) dev = kzalloc(sizeof(struct device), GFP_KERNEL); if (!dev) return ERR_PTR(-ENOMEM); - strncpy(dev->bus_id, name, min(strlen(name), (size_t)BUS_ID_SIZE)); + dev_set_name(dev, name); dev->release = s390_root_dev_release; ret = device_register(dev); if (ret) { Index: linux-2.6/drivers/s390/scsi/zfcp_aux.c =================================================================== --- linux-2.6.orig/drivers/s390/scsi/zfcp_aux.c +++ linux-2.6/drivers/s390/scsi/zfcp_aux.c @@ -839,7 +839,7 @@ zfcp_unit_enqueue(struct zfcp_port *port unit->fcp_lun = fcp_lun; /* setup for sysfs registration */ - snprintf(unit->sysfs_device.bus_id, BUS_ID_SIZE, "0x%016llx", fcp_lun); + dev_set_name(&unit->sysfs_device, "0x%016llx", fcp_lun); unit->sysfs_device.parent = &port->sysfs_device; unit->sysfs_device.release = zfcp_sysfs_unit_release; dev_set_drvdata(&unit->sysfs_device, unit); @@ -1066,8 +1066,7 @@ zfcp_adapter_enqueue(struct ccw_device * adapter->generic_services.parent = &adapter->ccw_device->dev; adapter->generic_services.release = zfcp_dummy_release; - snprintf(adapter->generic_services.bus_id, BUS_ID_SIZE, - "generic_services"); + dev_set_name(&adapter->generic_services, "generic_services"); if (device_register(&adapter->generic_services)) goto generic_services_failed; @@ -1218,24 +1217,19 @@ zfcp_port_enqueue(struct zfcp_adapter *a if (status & ZFCP_STATUS_PORT_WKA) { switch (d_id) { case ZFCP_DID_DIRECTORY_SERVICE: - snprintf(port->sysfs_device.bus_id, BUS_ID_SIZE, - "directory"); + dev_set_name(&port->sysfs_device, "directory"); break; case ZFCP_DID_MANAGEMENT_SERVICE: - snprintf(port->sysfs_device.bus_id, BUS_ID_SIZE, - "management"); + dev_set_name(&port->sysfs_device, "management"); break; case ZFCP_DID_KEY_DISTRIBUTION_SERVICE: - snprintf(port->sysfs_device.bus_id, BUS_ID_SIZE, - "key_distribution"); + dev_set_name(&port->sysfs_device, "key_distribution"); break; case ZFCP_DID_ALIAS_SERVICE: - snprintf(port->sysfs_device.bus_id, BUS_ID_SIZE, - "alias"); + dev_set_name(&port->sysfs_device, "alias"); break; case ZFCP_DID_TIME_SERVICE: - snprintf(port->sysfs_device.bus_id, BUS_ID_SIZE, - "time"); + dev_set_name(&port->sysfs_device, "time"); break; default: kfree(port); @@ -1244,8 +1238,7 @@ zfcp_port_enqueue(struct zfcp_adapter *a port->d_id = d_id; port->sysfs_device.parent = &adapter->generic_services; } else { - snprintf(port->sysfs_device.bus_id, - BUS_ID_SIZE, "0x%016llx", wwpn); + dev_set_name(&port->sysfs_device, "0x%016llx", wwpn); port->sysfs_device.parent = &adapter->ccw_device->dev; } port->sysfs_device.release = zfcp_sysfs_port_release; ^ permalink raw reply [flat|nested] 18+ messages in thread
* [PATCH] s390: bus_id -> dev_set_name() for css and ccw busses 2008-06-23 15:22 ` Cornelia Huck 2008-06-23 15:23 ` [PATCH] s390: bus_id -> dev_set_name() changes Cornelia Huck @ 2008-06-23 15:24 ` Cornelia Huck 2008-06-23 22:13 ` linux-next: s390 build failure Greg KH 2 siblings, 0 replies; 18+ messages in thread From: Cornelia Huck @ 2008-06-23 15:24 UTC (permalink / raw) To: Greg KH; +Cc: Stephen Rothwell, linux-next, Martin Schwidefsky From: Cornelia Huck <cornelia.huck@de.ibm.com> Convert remaining s390 users setting bus_id to dev_set_name() or init_name. Signed-off-by: Cornelia Huck <cornelia.huck@de.ibm.com> --- drivers/s390/cio/cio.c | 13 +++++++++++-- drivers/s390/cio/cio.h | 4 ++++ drivers/s390/cio/device.c | 16 ++++++++++++++-- 3 files changed, 29 insertions(+), 4 deletions(-) Index: linux-2.6/drivers/s390/cio/cio.c =================================================================== --- linux-2.6.orig/drivers/s390/cio/cio.c +++ linux-2.6/drivers/s390/cio/cio.c @@ -529,8 +529,10 @@ cio_validate_subchannel (struct subchann } mutex_init(&sch->reg_mutex); /* Set a name for the subchannel */ - snprintf (dev_name(&sch->dev), BUS_ID_SIZE, "0.%x.%04x", schid.ssid, - schid.sch_no); + if (cio_is_console(schid)) + sch->dev.init_name = cio_get_console_sch_name(schid); + else + dev_set_name(&sch->dev, "0.%x.%04x", schid.ssid, schid.sch_no); /* * The first subchannel that is not-operational (ccode==3) @@ -681,6 +683,7 @@ do_IRQ (struct pt_regs *regs) #ifdef CONFIG_CCW_CONSOLE static struct subchannel console_subchannel; +static char console_sch_name[10] = "0.x.xxxx"; static struct io_subchannel_private console_priv; static int console_subchannel_in_use; @@ -831,6 +834,12 @@ cio_get_console_subchannel(void) return &console_subchannel; } +const char *cio_get_console_sch_name(struct subchannel_id schid) +{ + snprintf(console_sch_name, 10, "0.%x.%04x", schid.ssid, schid.sch_no); + return (const char *)console_sch_name; +} + #endif static int __disable_subchannel_easy(struct subchannel_id schid, struct schib *schib) Index: linux-2.6/drivers/s390/cio/cio.h =================================================================== --- linux-2.6.orig/drivers/s390/cio/cio.h +++ linux-2.6/drivers/s390/cio/cio.h @@ -111,11 +111,15 @@ extern int cio_is_console(struct subchan extern struct subchannel *cio_get_console_subchannel(void); extern spinlock_t * cio_get_console_lock(void); extern void *cio_get_console_priv(void); +extern const char *cio_get_console_sch_name(struct subchannel_id schid); +extern const char *cio_get_console_cdev_name(struct subchannel *sch); #else #define cio_is_console(schid) 0 #define cio_get_console_subchannel() NULL #define cio_get_console_lock() NULL #define cio_get_console_priv() NULL +#define cio_get_console_sch_name(schid) NULL +#define cio_get_console_cdev_name(sch) NULL #endif #endif Index: linux-2.6/drivers/s390/cio/device.c =================================================================== --- linux-2.6.orig/drivers/s390/cio/device.c +++ linux-2.6/drivers/s390/cio/device.c @@ -1051,8 +1051,11 @@ io_subchannel_recog(struct ccw_device *c init_timer(&priv->timer); /* Set an initial name for the device. */ - snprintf (cdev->dev.bus_id, BUS_ID_SIZE, "0.%x.%04x", - sch->schid.ssid, sch->schib.pmcw.dev); + if (cio_is_console(sch->schid)) + cdev->dev.init_name = cio_get_console_cdev_name(sch); + else + dev_set_name(&cdev->dev, "0.%x.%04x", + sch->schid.ssid, sch->schib.pmcw.dev); /* Increase counter of devices currently in recognition. */ atomic_inc(&ccw_device_init_count); @@ -1287,6 +1290,7 @@ io_subchannel_shutdown(struct subchannel #ifdef CONFIG_CCW_CONSOLE static struct ccw_device console_cdev; +static char console_cdev_name[10] = "0.x.xxxx"; static struct ccw_device_private console_private; static int console_cdev_in_use; @@ -1355,6 +1359,14 @@ ccw_device_probe_console(void) console_cdev.online = 1; return &console_cdev; } + + +const char *cio_get_console_cdev_name(struct subchannel *sch) +{ + snprintf(console_cdev_name, 10, "0.%x.%04x", + sch->schid.ssid, sch->schib.pmcw.dev); + return (const char *)console_cdev_name; +} #endif /* ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-23 15:22 ` Cornelia Huck 2008-06-23 15:23 ` [PATCH] s390: bus_id -> dev_set_name() changes Cornelia Huck 2008-06-23 15:24 ` [PATCH] s390: bus_id -> dev_set_name() for css and ccw busses Cornelia Huck @ 2008-06-23 22:13 ` Greg KH 2 siblings, 0 replies; 18+ messages in thread From: Greg KH @ 2008-06-23 22:13 UTC (permalink / raw) To: Cornelia Huck; +Cc: Stephen Rothwell, linux-next, Martin Schwidefsky On Mon, Jun 23, 2008 at 05:22:26PM +0200, Cornelia Huck wrote: > On Fri, 20 Jun 2008 09:58:43 +0200, > Cornelia Huck <cornelia.huck@de.ibm.com> wrote: > > > I could also try to split out > > dev_set_name() conversion from the init_name stuff, but I fear that > > doesn't make much sense... > > Well, so I did just that... I'll reply to this mail with two patches: > > - "s390: bus_id -> dev_set_name() changes" should replace the patch of > the same title. It removes the dependency on init_name. > > - "s390: bus_id -> dev_set_name() for css and ccw busses" should go > after "driver core: add init_name to struct device". It depends on > init_name and consequently should be commented out until that patch is > re-activated. > > Greg: Could you please add these to your tree? I've now done so, thanks for sending them to me. greg k-h ^ permalink raw reply [flat|nested] 18+ messages in thread
* linux-next: s390 build failure @ 2009-03-19 23:53 Stephen Rothwell 0 siblings, 0 replies; 18+ messages in thread From: Stephen Rothwell @ 2009-03-19 23:53 UTC (permalink / raw) To: Martin Schwidefsky, Heiko Carstens; +Cc: linux-next, Rusty Russell [-- Attachment #1: Type: text/plain, Size: 575 bytes --] Hi all, Today's (and yesterday's) linux-next build of s390 defconfig failed like this: In file included from arch/s390/include/asm/tlb.h:30, from arch/s390/mm/init.c:37: arch/s390/include/asm/tlbflush.h: In function '__tlb_flush_full': arch/s390/include/asm/tlbflush.h:54: error: incompatible type for argument 2 of 'cpumask_equal' Caused by a bad merge on my part. It will be fixed today as the conflicting commit has been removed. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* linux-next: s390 build failure @ 2009-03-19 23:42 Stephen Rothwell 2009-03-20 8:24 ` Heiko Carstens 0 siblings, 1 reply; 18+ messages in thread From: Stephen Rothwell @ 2009-03-19 23:42 UTC (permalink / raw) To: Martin Schwidefsky, Heiko Carstens Cc: linux-next, Thomas Gleixner, Ingo Molnar, H. Peter Anvin [-- Attachment #1: Type: text/plain, Size: 583 bytes --] Hi all, The linux-next build for s390 allnoconfig failed like this: In file included from arch/s390/include/asm/tlb.h:29, from arch/s390/mm/pgtable.c:25: arch/s390/include/asm/smp.h:95: error: redefinition of 'smp_send_stop' include/linux/smp.h:125: error: previous definition of 'smp_send_stop' was here Caused by commit d1dedb52acd98bd5e13e1ff4c4d045d58bbd16fe ("panic, smp: provide smp_send_stop() wrapper on UP too") from the tip-core tree. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2009-03-19 23:42 Stephen Rothwell @ 2009-03-20 8:24 ` Heiko Carstens 2009-03-20 10:00 ` Ingo Molnar 0 siblings, 1 reply; 18+ messages in thread From: Heiko Carstens @ 2009-03-20 8:24 UTC (permalink / raw) To: Stephen Rothwell Cc: Martin Schwidefsky, linux-next, Thomas Gleixner, Ingo Molnar, H. Peter Anvin On Fri, 20 Mar 2009 10:42:08 +1100 Stephen Rothwell <sfr@canb.auug.org.au> wrote: > The linux-next build for s390 allnoconfig failed like this: > > In file included from arch/s390/include/asm/tlb.h:29, > from arch/s390/mm/pgtable.c:25: > arch/s390/include/asm/smp.h:95: error: redefinition of 'smp_send_stop' > include/linux/smp.h:125: error: previous definition of 'smp_send_stop' was here > > Caused by commit d1dedb52acd98bd5e13e1ff4c4d045d58bbd16fe ("panic, smp: > provide smp_send_stop() wrapper on UP too") from the tip-core tree. Ingo, could you pick up the patch below? Subject: [PATCH] s390: remove arch specific smp_send_stop From: Heiko Carstens <heiko.carstens@de.ibm.com> Remove arch specific smp_send_stop for !CONFIG_SMP since it conflicts with a new generic version. Cc: Martin Schwidefsky <schwidefsky@de.ibm.com> Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com> --- arch/s390/include/asm/smp.h | 6 ------ 1 file changed, 6 deletions(-) Index: linux-next/arch/s390/include/asm/smp.h =================================================================== --- linux-next.orig/arch/s390/include/asm/smp.h +++ linux-next/arch/s390/include/asm/smp.h @@ -92,12 +92,6 @@ extern void arch_send_call_function_ipi( #endif #ifndef CONFIG_SMP -static inline void smp_send_stop(void) -{ - /* Disable all interrupts/machine checks */ - __load_psw_mask(psw_kernel_bits & ~PSW_MASK_MCHECK); -} - #define hard_smp_processor_id() 0 #define smp_cpu_not_running(cpu) 1 #endif ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2009-03-20 8:24 ` Heiko Carstens @ 2009-03-20 10:00 ` Ingo Molnar 2009-03-20 10:33 ` Heiko Carstens 0 siblings, 1 reply; 18+ messages in thread From: Ingo Molnar @ 2009-03-20 10:00 UTC (permalink / raw) To: Heiko Carstens Cc: Stephen Rothwell, Martin Schwidefsky, linux-next, Thomas Gleixner, H. Peter Anvin * Heiko Carstens <heiko.carstens@de.ibm.com> wrote: > On Fri, 20 Mar 2009 10:42:08 +1100 > Stephen Rothwell <sfr@canb.auug.org.au> wrote: > > The linux-next build for s390 allnoconfig failed like this: > > > > In file included from arch/s390/include/asm/tlb.h:29, > > from arch/s390/mm/pgtable.c:25: > > arch/s390/include/asm/smp.h:95: error: redefinition of 'smp_send_stop' > > include/linux/smp.h:125: error: previous definition of 'smp_send_stop' was here > > > > Caused by commit d1dedb52acd98bd5e13e1ff4c4d045d58bbd16fe ("panic, smp: > > provide smp_send_stop() wrapper on UP too") from the tip-core tree. > > Ingo, could you pick up the patch below? Applied, thanks guys! Btw., my cross-build scripts fail on s390 on latest -git, with: Assembler messages: FATAL: can't create scripts/mod/.tmp_empty.o: Invalid bfd target make[3]: *** [scripts/mod/empty.o] Error 2 make[3]: *** Waiting for unfinished jobs.... have i made some mistake in setting them up? I have this cross build environment: aldebaran:~/linux/linux> /opt/crossgcc/cross/bin/s390-linux-gcc -v Using built-in specs. Target: s390-linux Configured with: /home/mingo/work/projects/crossgcc/gcc/configure --target=s390-linux --enable-targets=all --prefix=/opt/crossgcc/cross --enable-languages=c --without-headers --enable-sjlj-exceptions --with-system-libunwind --disable-nls --disable-threads --disable-shared --disable-libmudflap --disable-libssp --disable-libgomp --disable-decimal-float --enable-checking=release Thread model: single gcc version 4.3.3 20081123 (prerelease) (GCC) aldebaran:~/linux/linux> /opt/crossgcc/cross/bin/s390-linux-ld -v GNU ld (GNU Binutils) 2.19 and i use: CROSS="CROSS_COMPILE=$ARCH-linux-" make O=$BUILDDIR $CROSS ARCH=$ARCH mrproper defconfig where ARCH=s390 in this case. Ingo ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2009-03-20 10:00 ` Ingo Molnar @ 2009-03-20 10:33 ` Heiko Carstens 0 siblings, 0 replies; 18+ messages in thread From: Heiko Carstens @ 2009-03-20 10:33 UTC (permalink / raw) To: Ingo Molnar Cc: Stephen Rothwell, Martin Schwidefsky, linux-next, Thomas Gleixner, H. Peter Anvin On Fri, 20 Mar 2009 11:00:22 +0100 Ingo Molnar <mingo@elte.hu> wrote: > Btw., my cross-build scripts fail on s390 on latest -git, with: > > Assembler messages: > FATAL: can't create scripts/mod/.tmp_empty.o: Invalid bfd target > make[3]: *** [scripts/mod/empty.o] Error 2 > make[3]: *** Waiting for unfinished jobs.... Haven't seen this yet. > have i made some mistake in setting them up? I have this cross build > environment: > > aldebaran:~/linux/linux> /opt/crossgcc/cross/bin/s390-linux-gcc -v > Using built-in specs. > Target: s390-linux > Configured with: /home/mingo/work/projects/crossgcc/gcc/configure > --target=s390-linux --enable-targets=all > --prefix=/opt/crossgcc/cross --enable-languages=c --without-headers > --enable-sjlj-exceptions --with-system-libunwind --disable-nls > --disable-threads --disable-shared --disable-libmudflap > --disable-libssp --disable-libgomp --disable-decimal-float > --enable-checking=release > Thread model: single > gcc version 4.3.3 20081123 (prerelease) (GCC) > aldebaran:~/linux/linux> /opt/crossgcc/cross/bin/s390-linux-ld -v > GNU ld (GNU Binutils) 2.19 ah, it's probably that you specified --target=s390-linux , that will build a 32 bit compiler, not a 64 bit one. You probably want s390x-ibm-linux. That gcc version can build both 32 and 64 bit binaries. Latest cross compiler I have on my notebook that works: heiko@osiris:~> s390x-ibm-linux-gcc-4.3.1 -v Using built-in specs. Target: s390x-ibm-linux Configured with: ../gcc-4.3.1/configure --prefix=/home/heiko/cross/ --disable-nls --disable-checking --enable-languages=c --target=s390x-ibm-linux --disable-threads --disable-shared --without-headers --disable-libmudflap --disable-libssp --disable-multilib --disable-libunwind-exceptions --disable-libgomp --disable-werror --program-prefix=s390x-4.3.1- Thread model: single gcc version 4.3.1 (GCC) heiko@osiris:~> s390x-4.3.1-ld -v GNU ld (Linux/GNU Binutils) 2.19.51.0.1.20090106 > and i use: > > CROSS="CROSS_COMPILE=$ARCH-linux-" > > make O=$BUILDDIR $CROSS ARCH=$ARCH mrproper defconfig > > where ARCH=s390 in this case. should work. ^ permalink raw reply [flat|nested] 18+ messages in thread
* linux-next: s390 build failure @ 2008-06-20 2:42 Stephen Rothwell 2008-06-20 11:42 ` Jens Axboe 2008-06-20 11:51 ` Martin Schwidefsky 0 siblings, 2 replies; 18+ messages in thread From: Stephen Rothwell @ 2008-06-20 2:42 UTC (permalink / raw) To: Martin Schwidefsky; +Cc: linux-next, Jens Axboe [-- Attachment #1: Type: text/plain, Size: 1338 bytes --] Hi Martin, Starting with next-20080613, the linux-next build (s390 defconfig s390x compiler) has failed with these errors: In file included from /scratch/michael/kisskb-build/src/include/linux/spinlock.h:87, from /scratch/michael/kisskb-build/src/include/linux/smp.h:11, from /scratch/michael/kisskb-build/src/include/linux/kernel_stat.h:4, from /scratch/michael/kisskb-build/src/mm/memory.c:41: include2/asm/spinlock.h: In function '__raw_spin_lock': include2/asm/spinlock.h:69: error: implicit declaration of function 'smp_processor_id' There are others as well, but I was concentrating on this. Bisecting leads to commit 2448ad3d8e64a9b58acca34a3d010cfa0be88cc1 which is the merge of the block tree. The block tree contains a commit (37e81b98dba08cce1d8eedb2bdaa58022bf31ee0 "Add generic helpers for arch IPI function calls") that adds an include of linux/spinlock.h to linux/smp.h. (asm-s390/spinlock.h includes linux/smp.h ...) But the block tree itself is OK. So something in the s390 tree is interacting with the above commit to cause the failure. It is not immediately obvious to me what that is. (Or I may have screwed up the bisect :-)) -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 197 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-20 2:42 Stephen Rothwell @ 2008-06-20 11:42 ` Jens Axboe 2008-06-21 8:07 ` Heiko Carstens 2008-06-20 11:51 ` Martin Schwidefsky 1 sibling, 1 reply; 18+ messages in thread From: Jens Axboe @ 2008-06-20 11:42 UTC (permalink / raw) To: Stephen Rothwell; +Cc: Martin Schwidefsky, linux-next, heiko.carstens On Fri, Jun 20 2008, Stephen Rothwell wrote: > Hi Martin, > > Starting with next-20080613, the linux-next build (s390 defconfig s390x > compiler) has failed with these errors: > > In file included from /scratch/michael/kisskb-build/src/include/linux/spinlock.h:87, > from /scratch/michael/kisskb-build/src/include/linux/smp.h:11, > from /scratch/michael/kisskb-build/src/include/linux/kernel_stat.h:4, > from /scratch/michael/kisskb-build/src/mm/memory.c:41: > include2/asm/spinlock.h: In function '__raw_spin_lock': > include2/asm/spinlock.h:69: error: implicit declaration of function 'smp_processor_id' > > There are others as well, but I was concentrating on this. Bisecting > leads to commit 2448ad3d8e64a9b58acca34a3d010cfa0be88cc1 which is the > merge of the block tree. The block tree contains a commit > (37e81b98dba08cce1d8eedb2bdaa58022bf31ee0 "Add generic helpers for arch > IPI function calls") that adds an include of linux/spinlock.h to > linux/smp.h. (asm-s390/spinlock.h includes linux/smp.h ...) > > But the block tree itself is OK. So something in the s390 tree is > interacting with the above commit to cause the failure. It is not > immediately obvious to me what that is. (Or I may have screwed up the > bisect :-)) Heiko was looking into this, I had forgotten about it. Heiko, did you find an adequate solution to this? -- Jens Axboe ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-20 11:42 ` Jens Axboe @ 2008-06-21 8:07 ` Heiko Carstens 2008-06-26 9:14 ` Jens Axboe 0 siblings, 1 reply; 18+ messages in thread From: Heiko Carstens @ 2008-06-21 8:07 UTC (permalink / raw) To: Jens Axboe; +Cc: Stephen Rothwell, Martin Schwidefsky, linux-next On Fri, Jun 20, 2008 at 01:42:48PM +0200, Jens Axboe wrote: > On Fri, Jun 20 2008, Stephen Rothwell wrote: > > Hi Martin, > > > > Starting with next-20080613, the linux-next build (s390 defconfig s390x > > compiler) has failed with these errors: > > > > In file included from /scratch/michael/kisskb-build/src/include/linux/spinlock.h:87, > > from /scratch/michael/kisskb-build/src/include/linux/smp.h:11, > > from /scratch/michael/kisskb-build/src/include/linux/kernel_stat.h:4, > > from /scratch/michael/kisskb-build/src/mm/memory.c:41: > > include2/asm/spinlock.h: In function '__raw_spin_lock': > > include2/asm/spinlock.h:69: error: implicit declaration of function 'smp_processor_id' > > > > There are others as well, but I was concentrating on this. Bisecting > > leads to commit 2448ad3d8e64a9b58acca34a3d010cfa0be88cc1 which is the > > merge of the block tree. The block tree contains a commit > > (37e81b98dba08cce1d8eedb2bdaa58022bf31ee0 "Add generic helpers for arch > > IPI function calls") that adds an include of linux/spinlock.h to > > linux/smp.h. (asm-s390/spinlock.h includes linux/smp.h ...) > > > > But the block tree itself is OK. So something in the s390 tree is > > interacting with the above commit to cause the failure. It is not > > immediately obvious to me what that is. (Or I may have screwed up the > > bisect :-)) > > Heiko was looking into this, I had forgotten about it. Heiko, did you > find an adequate solution to this? My only conclusion back then was that you shouldn't add the new #include <linux/spinlock.h> to include <linux/smp.h> (see also Martin's mail). ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-21 8:07 ` Heiko Carstens @ 2008-06-26 9:14 ` Jens Axboe 0 siblings, 0 replies; 18+ messages in thread From: Jens Axboe @ 2008-06-26 9:14 UTC (permalink / raw) To: Heiko Carstens; +Cc: Stephen Rothwell, Martin Schwidefsky, linux-next On Sat, Jun 21 2008, Heiko Carstens wrote: > On Fri, Jun 20, 2008 at 01:42:48PM +0200, Jens Axboe wrote: > > On Fri, Jun 20 2008, Stephen Rothwell wrote: > > > Hi Martin, > > > > > > Starting with next-20080613, the linux-next build (s390 defconfig s390x > > > compiler) has failed with these errors: > > > > > > In file included from /scratch/michael/kisskb-build/src/include/linux/spinlock.h:87, > > > from /scratch/michael/kisskb-build/src/include/linux/smp.h:11, > > > from /scratch/michael/kisskb-build/src/include/linux/kernel_stat.h:4, > > > from /scratch/michael/kisskb-build/src/mm/memory.c:41: > > > include2/asm/spinlock.h: In function '__raw_spin_lock': > > > include2/asm/spinlock.h:69: error: implicit declaration of function 'smp_processor_id' > > > > > > There are others as well, but I was concentrating on this. Bisecting > > > leads to commit 2448ad3d8e64a9b58acca34a3d010cfa0be88cc1 which is the > > > merge of the block tree. The block tree contains a commit > > > (37e81b98dba08cce1d8eedb2bdaa58022bf31ee0 "Add generic helpers for arch > > > IPI function calls") that adds an include of linux/spinlock.h to > > > linux/smp.h. (asm-s390/spinlock.h includes linux/smp.h ...) > > > > > > But the block tree itself is OK. So something in the s390 tree is > > > interacting with the above commit to cause the failure. It is not > > > immediately obvious to me what that is. (Or I may have screwed up the > > > bisect :-)) > > > > Heiko was looking into this, I had forgotten about it. Heiko, did you > > find an adequate solution to this? > > My only conclusion back then was that you shouldn't add the new > #include <linux/spinlock.h> to include <linux/smp.h> (see also Martin's mail). OK, I changed it to not include spinlock.h and kill the call_function_lock decleration. If generic smp helpers are now used, smp.c will include functions for acquiring and releasing the ipi call lock instead. -- Jens Axboe ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-06-20 2:42 Stephen Rothwell 2008-06-20 11:42 ` Jens Axboe @ 2008-06-20 11:51 ` Martin Schwidefsky 1 sibling, 0 replies; 18+ messages in thread From: Martin Schwidefsky @ 2008-06-20 11:51 UTC (permalink / raw) To: Stephen Rothwell; +Cc: linux-next, Jens Axboe On Fri, 2008-06-20 at 12:42 +1000, Stephen Rothwell wrote: > In file included from /scratch/michael/kisskb-build/src/include/linux/spinlock.h:87, > from /scratch/michael/kisskb-build/src/include/linux/smp.h:11, > from /scratch/michael/kisskb-build/src/include/linux/kernel_stat.h:4, > from /scratch/michael/kisskb-build/src/mm/memory.c:41: > include2/asm/spinlock.h: In function '__raw_spin_lock': > include2/asm/spinlock.h:69: error: implicit declaration of function 'smp_processor_id' > > There are others as well, but I was concentrating on this. Bisecting > leads to commit 2448ad3d8e64a9b58acca34a3d010cfa0be88cc1 which is the > merge of the block tree. The block tree contains a commit > (37e81b98dba08cce1d8eedb2bdaa58022bf31ee0 "Add generic helpers for arch > IPI function calls") that adds an include of linux/spinlock.h to > linux/smp.h. (asm-s390/spinlock.h includes linux/smp.h ...) > > But the block tree itself is OK. So something in the s390 tree is > interacting with the above commit to cause the failure. It is not > immediately obvious to me what that is. (Or I may have screwed up the > bisect :-)) Hmm, the minimal test case for this is: #include <linux/smp.h> * linux/smp.h defines __LINUX_SMP_H then includes linux/spinlock.h * linux/spinlock.h includes some more headers, then asm/spinlock.h * asm/spinlock.h includes linux/smp.h with no effect because linux/smp.h has already defined __LINUX_SMP_H, then uses smp_processor_id() which is not defined yet * on return from the linux/spinlock.h include linux/smp.h defines smp_processor_id() Relavant commits that cause this problem: 1) commit 3888f22c9cc8b4eca034f11b13d7f7957627fcfb Author: Jens Axboe <jens.axboe@oracle.com> Date: Fri Jun 6 10:58:32 2008 +0200 Add generic helpers for arch IPI function calls This commit introduces the #include <linux/spinlock.h> to linux/smp.h -- blue skies, Martin. "Reality continues to ruin my life." - Calvin. ^ permalink raw reply [flat|nested] 18+ messages in thread
* linux-next: s390 build failure @ 2008-05-12 8:03 Stephen Rothwell 2008-05-12 16:49 ` Greg KH 0 siblings, 1 reply; 18+ messages in thread From: Stephen Rothwell @ 2008-05-12 8:03 UTC (permalink / raw) To: Greg KH; +Cc: linux-next, Kay Sievers, Martin Schwidefsky [-- Attachment #1: Type: text/plain, Size: 573 bytes --] Hi Greg, Today's linux-next build (s390 defconfig) fails like this: drivers/s390/cio/device_fsm.c:53: error: syntax error before ';' token drivers/s390/cio/device_fsm.c:54: error: syntax error before ';' token Caused by commit 67da378c80848bb778ee8caecadcdf17e1e310e0 ("driver-core: prepare for removal of 20 char limit from struct device") from the driver-core tree. Missing close parentheses on added dev_name() calls. A touch more care, please. -- Cheers, Stephen Rothwell sfr@canb.auug.org.au http://www.canb.auug.org.au/~sfr/ [-- Attachment #2: Type: application/pgp-signature, Size: 189 bytes --] ^ permalink raw reply [flat|nested] 18+ messages in thread
* Re: linux-next: s390 build failure 2008-05-12 8:03 Stephen Rothwell @ 2008-05-12 16:49 ` Greg KH 0 siblings, 0 replies; 18+ messages in thread From: Greg KH @ 2008-05-12 16:49 UTC (permalink / raw) To: Stephen Rothwell; +Cc: linux-next, Kay Sievers, Martin Schwidefsky On Mon, May 12, 2008 at 06:03:35PM +1000, Stephen Rothwell wrote: > Hi Greg, > > Today's linux-next build (s390 defconfig) fails like this: > > drivers/s390/cio/device_fsm.c:53: error: syntax error before ';' token > drivers/s390/cio/device_fsm.c:54: error: syntax error before ';' token > > Caused by commit 67da378c80848bb778ee8caecadcdf17e1e310e0 ("driver-core: > prepare for removal of 20 char limit from struct device") from the > driver-core tree. Missing close parentheses on added dev_name() calls. > > A touch more care, please. I have updated version of this in my to-apply queue, I've dropped this now so linux-next tomorrow should be just fine. I'll add it back in when I have the cross-build system set up here so that I can test things to prevent this kind of mess from happening in the future. Sorry about that. greg k-h ^ permalink raw reply [flat|nested] 18+ messages in thread
end of thread, other threads:[~2009-03-20 10:33 UTC | newest] Thread overview: 18+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2008-06-20 3:52 linux-next: s390 build failure Stephen Rothwell 2008-06-20 7:58 ` Cornelia Huck 2008-06-23 15:22 ` Cornelia Huck 2008-06-23 15:23 ` [PATCH] s390: bus_id -> dev_set_name() changes Cornelia Huck 2008-06-23 15:24 ` [PATCH] s390: bus_id -> dev_set_name() for css and ccw busses Cornelia Huck 2008-06-23 22:13 ` linux-next: s390 build failure Greg KH -- strict thread matches above, loose matches on Subject: below -- 2009-03-19 23:53 Stephen Rothwell 2009-03-19 23:42 Stephen Rothwell 2009-03-20 8:24 ` Heiko Carstens 2009-03-20 10:00 ` Ingo Molnar 2009-03-20 10:33 ` Heiko Carstens 2008-06-20 2:42 Stephen Rothwell 2008-06-20 11:42 ` Jens Axboe 2008-06-21 8:07 ` Heiko Carstens 2008-06-26 9:14 ` Jens Axboe 2008-06-20 11:51 ` Martin Schwidefsky 2008-05-12 8:03 Stephen Rothwell 2008-05-12 16:49 ` Greg KH
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).