Teck Choon Giam
2009-Aug-15 22:11 UTC
[Xen-devel] Compile linux-2.6.18-xen.hg with changeset 927 error
Hi Keir, I believe something is wrong for available_credit? Partial error as below: CC drivers/xen/blkback/blkback.o /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/blkback.c: In function ''refill_credit'': /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/blkback.c:206: error: ''blkif_t'' has no member named ''available_credit'' /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/blkback.c:209: error: ''blkif_t'' has no member named ''available_credit'' /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/blkback.c:210: error: ''blkif_t'' has no member named ''available_credit'' make[8]: *** [drivers/xen/blkback/blkback.o] Error 1 make[7]: *** [drivers/xen/blkback] Error 2 make[6]: *** [drivers/xen] Error 2 linux-2.6.18-xen.hg/drivers/xen/blkback]# grep available_credit ./* ./blkback.c: blkif->available_credit += blkif->credit_req; ./blkback.c: if (blkif->available_credit > (blkif->credit_req * blkif->credit_msec)) ./blkback.c: blkif->available_credit = blkif->credit_req; Is it suppose to be remaining_credit instead of available_credit? I am just guessing while reading: http://xenbits.xensource.com/linux-2.6.18-xen.hg?diff/56df01ffed10/drivers/xen/blkback/blkback.c http://xenbits.xensource.com/linux-2.6.18-xen.hg?diff/56df01ffed10/drivers/xen/blkback/common.h http://xenbits.xensource.com/linux-2.6.18-xen.hg?diff/56df01ffed10/drivers/xen/blkback/xenbus.c Thanks. Kindest regards, Giam Teck Choon _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
Teck Choon Giam
2009-Aug-16 03:49 UTC
[Xen-devel] Re: Compile linux-2.6.18-xen.hg with changeset 927 error
Hi Keir, I changed available_credit to remaining_credit and get pass the error but encounter the below which I guess is another typo? /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c: In function ‘blkback_read_credit’: /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:268: error: ‘usec’ undeclared (first use in this function) /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:268: error: (Each undeclared identifier is reported only once /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:268: error: for each function it appears in.) /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:291: warning: implicit declaration of function ‘WPRINTK’ /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c: In function ‘connect’: /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:466: warning: passing argument 3 of ‘blkback_read_credit’ from incompatible pointer type /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:466: warning: passing argument 4 of ‘blkback_read_credit’ from incompatible pointer type make[8]: *** [drivers/xen/blkback/xenbus.o] Error 1 http://xenbits.xensource.com/linux-2.6.18-xen.hg?diff/56df01ffed10/drivers/xen/blkback/xenbus.c *usec = 0; I guess it is: *msec = 0; After changing the above, I am able to get pass the error but hit with the below error: LD .tmp_vmlinux1 drivers/built-in.o: In function `blkback_read_credit'': /home/choonrpm/rpmbuild/BUILD/xen-3.4.1-src/linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c:291: undefined reference to `WPRINTK'' make[5]: *** [.tmp_vmlinux1] Error 1 make[4]: *** [vmlinuz] Error 2 make[3]: *** [vmlinuz] Error 2 Doing a grep WPRINTK as below and I think it lack of #define WPRINTK(fmt, args...) line somewhere... ... # grep WPRINTK linux-2.6.18-xen.hg/drivers/xen/*/* linux-2.6.18-xen.hg/drivers/xen/balloon/balloon.c:#define WPRINTK(fmt, args...) \ linux-2.6.18-xen.hg/drivers/xen/balloon/balloon.c: WPRINTK("Unable to create /proc/xen/balloon.\n"); linux-2.6.18-xen.hg/drivers/xen/blkback/xenbus.c: WPRINTK("Failed to parse I/O credit limit. I/O operations are unlimited.\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Unable to open device /dev/xen/blktap%d\n", linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("blktap: mmap, retrieving idx failed\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("you _must_ map exactly %d pages!\n", linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Mapping user ring failed!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Couldn''t alloc VM_FOREIGN map.\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Error initialising /dev/xen/blktap - " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Error initialising /dev/xen/blktap - " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("BLKTAP_QUERY_ALLOC_REQS ioctl: %d/%d\n", linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("%s: out of memory\n", __FUNCTION__); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("fast_flush: Couldn''t get info!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Couldn''t get a pte addr!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Incorrect req map" linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Corresponding UE " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Can''t get UE info!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("RING_FULL! More to do\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("RING_REQUEST_CONS_OVERFLOW!" linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("unknown operation [%d]\n", linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Bad number of segments in request (%d)\n", nseg); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("blktap: ring not ready for requests!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("blktap: fe_ring is full, can''t add " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Couldn''t get a pte addr!\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("invalid kernel buffer -- " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("invalid user buffer -- " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("invalid kernel buffer -- " linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Reached Fail_flush\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("Couldn''t register /dev/xen/blktap\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/blktap.c: WPRINTK("blktap: sysfs xen_class not created\n"); linux-2.6.18-xen.hg/drivers/xen/blktap/common.h:#define WPRINTK(fmt, args...) printk(KERN_WARNING "blk_tap: " fmt, ##args) linux-2.6.18-xen.hg/drivers/xen/blktap/xenbus.c: WPRINTK("Error starting thread\n"); linux-2.6.18-xen.hg/drivers/xen/netback/common.h:#define WPRINTK(fmt, args...) \ linux-2.6.18-xen.hg/drivers/xen/netback/netback.c: WPRINTK("Memory squeeze in netback " linux-2.6.18-xen.hg/drivers/xen/netback/xenbus.c: WPRINTK("Failed to parse network rate limit. Traffic unlimited.\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/accel.c:#define WPRINTK(fmt, args...) \ linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c:#define WPRINTK(fmt, args...) \ linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Missing extra info\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Invalid extra type: %d\n", linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("rx->offset: %x, size: %u\n", linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Bad rx response id %d.\n", rx->id); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Unfulfilled rx req " linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Need more frags\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Too many frags\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("GSO size must not be zero.\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Bad GSO type %d.\n", gso->u.gso.type); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("GSO unsupported by this kernel.\n"); linux-2.6.18-xen.hg/drivers/xen/netfront/netfront.c: WPRINTK("Cannot specify both rx_copy and rx_flip.\n"); linux-2.6.18-xen.hg/drivers/xen/usbfront/usbfront-hub.c: WPRINTK("xenusb_hub_control(typeReq %x wValue %x wIndex %x)\n", So I added: #define WPRINTK(fmt, args...) \ Above the below line: WPRINTK("Failed to parse I/O credit limit. I/O operations are unlimited.\n"); After the above, I am able to compile without error. Attached is the patch and I wonder if that correct? Appreciate any kind checking from anyone ;) Thanks. Kindest regards, Giam Teck Choon _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel