ChangeSet@1.1802, 2004-07-14 18:02:30-07:00, torvalds@ppc970.osdl.org Merge bk://kernel.bkbits.net/gregkh/linux/i2c-2.6 into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.1800, 2004-07-14 17:42:30-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: use "normal" handlers for "flagged" taskfiles (ide-taskfile.c) This fixes following issues for PIO-in: - shared PCI IRQs handling - fail request if the last status is bad and PIO-out: - set hwgroup->handler/timer in prehandlers - handle drive->unmask in prehandlers - check for !rq->nr_sectors and DRQ_STAT bit set - use drive->bad_wstat instead of BAD_W_STAT Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1799, 2004-07-14 17:42:19-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: merge CONFIG_IDE_TASKFILE_IO=y|n PIO handlers together This fixes a couple of CONFIG_IDE_TASKFILE_IO=n issues: - check status after last sector for PIO-in transfers - handle drive->unmask properly in PIO-out prehandlers - use rq->[hard]_nr_sectors where appropriate Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1798, 2004-07-14 17:42:07-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: no partial completions for PIO (CONFIG_IDE_TASKFILE_IO=y) Don't do partial completions but instead acknowledge already transferred sectors with verified good status on error. This allows us to complete "good" sectors to block layer even if bio they belong to wasn't finished and simplifies code. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1797, 2004-07-14 17:41:55-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: pre_task_mulout_intr() cleanup (CONFIG_IDE_TASKFILE_IO=n) drive_is_ready() reads STATUS register if CONFIG_IDEPCI_SHARE_IRQ is not defined and ALTSTATUS register if it is defined. Therefore drive_is_ready() in pre_task_mulout_intr() only makes sense if we can't trust STATUS register (because we call ide_wait_stat() which reads STATUS register earlier). Remove this "workaround" for now as it is not present in ide-disk.c and whole multi PIO-out code (CONFIG_IDE_TASKFILE_IO=n) was buggy before. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1796, 2004-07-14 17:41:44-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] remove pre_task_out_intr() comment (CONFIG_IDE_TASKFILE_IO=n) disable_irq_nosync() in ide-io.c:ide_do_request() protects pre_task_out_intr() from racing with the task_out_intr(). Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1795, 2004-07-14 17:41:32-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: remove BUSY check from task_in_intr() (CONFIG_IDE_TASKFILE_IO=n) We shouldn't ever get there if drive is busy and we can't start transfer in this case. ide-disk.c:read_intr() also doesn't check for BUSY_STAT bit. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1794, 2004-07-14 17:41:21-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: PIO-out error handling fixes (CONFIG_IDE_TASKFILE_IO=y) We shouldn't ever get into ->handler() if drive is busy so just call ->error() unconditionally if status check fails. Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1793, 2004-07-14 17:41:10-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: PIO-out ->prehandler() fixes (CONFIG_IDE_TASKFILE_IO=y) Setup handler and output first data block directly from ->prehandler() instead of calling ->handler(). The only change in functionality is that we no longer check DRIVE_READY status bits (there is no need to do it). Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1792, 2004-07-14 17:40:58-07:00, B.Zolnierkiewicz@elka.pw.edu.pl [PATCH] ide: PIO-out fixes for ide-taskfile.c (CONFIG_IDE_TASKFILE_IO=n) - in task_out_intr() fix off-by-1 bug and (stat & DRQ_STAT) check,   previously "if" was always true for rq->current_nr_sectors == 1 - fail request if DRQ_STAT is not set and rq->current_nr_sectors != 0 (instead of setting handler and waiting for the next IRQ) or if DRQ_STAT is set but !rq->current_nr_sectors (in task_mulout_intr() this was OK) - in task_mulout_intr() check also DRIVE_READY and WRERR_STAT status bits Signed-off-by: Bartlomiej Zolnierkiewicz Signed-off-by: Linus Torvalds ChangeSet@1.1784.12.8, 2004-07-14 16:20:29-07:00, olh@suse.de [PATCH] add removeable sysfs block device attribute This patch adds a /block/*/removeable sysfs attribute. A value of 1 indicates the media can change anytime. This is a hint for userland to poll such devices for possible media changes, and leave all others alone. There is currently no way to see if a connected usb-storage device is a disk or a card reader. It will also show 1 for CD and ZIP drives. It was done by Patrick Mansfield a while ago. I can probably not sigh-off his work. ;) Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.12.7, 2004-07-14 16:19:51-07:00, mika@osdl.org [PATCH] Upgrade security/root_plug.c to new module parameter syntax Hi again, Still doing my compile, and got this: CC [M] security/root_plug.o security/root_plug.c:39: warning: missing initializer security/root_plug.c:39: warning: (near initialization for `__parm_vendor_id.addr') security/root_plug.c:42: warning: missing initializer security/root_plug.c:42: warning: (near initialization for `__parm_product_id.addr') security/root_plug.c:48: warning: missing initializer security/root_plug.c:48: warning: (near initialization for `__parm_debug.addr') Simply upgrading root_plug to use the new module parameter syntax seemed to do the trick. I made the debug writable, the others just readable to root. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.12.6, 2004-07-14 16:09:44-07:00, dtor_core@ameritech.net [PATCH] Driver core: Fix OOPS in device_platform_unregister Driver core: platform_device_unregister should release resources first and only then call device_unregister, otherwise if there are no more references to the device it will be freed and the fucntion will try to access freed memory. Signed-off-by: Dmitry Torokhov Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.1.96, 2004-07-14 16:04:27-07:00, orange@fobie.net [PATCH] I2C: patch quirks.c - SMBus hidden on hp laptop This patch unhides the SMBus on the hp nc8000 and nc6000 laptops. The patch has been co-written by Jean Delvare and Rudolf Marek. I've only tested this on nc8000, but it should work for the nc6000 too. Unfortunatley, we had to little information to fix the problem described in the reported bug below, as is probably the same problem. But if we're very lucky it might solve it too. http://bugzilla.kernel.org/show_bug.cgi?id=2976 Signed-off-by: Örjan Persson Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1790.1.1, 2004-07-14 15:44:39-07:00, greg@kroah.com merge fixups due to sparse cleanups being done by al and greg at the same time. ChangeSet@1.1757.67.39, 2004-07-14 15:08:37-07:00, bunk@fs.tum.de [PATCH] USB: USB w9968cf compile error On Tue, Jul 13, 2004 at 06:25:59PM -0700, Andrew Morton wrote: >... > All 252 patches: >... > bk-usb.patch >... This patch marks w9968cf_valid_depth as inline, although it's used before it's defined. gcc 3.4 therefore correctly fails with: <-- snip --> ... CC drivers/usb/media/w9968cf.o drivers/usb/media/w9968cf.c: In function `w9968cf_set_picture': drivers/usb/media/w9968cf.c:487: sorry, unimplemented: inlining failed in call to 'w9968cf_valid_depth': function body not available drivers/usb/media/w9968cf.c:1722: sorry, unimplemented: called from here make[3]: *** [drivers/usb/media/w9968cf.o] Error 1 <-- snip --> This patch moves w9968cf_valid_depth above it's first user (it also uses two other functions to keep the ordering of functions a bit more consistent). Signed-off-by: Adrian Bunk Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.38, 2004-07-14 15:08:21-07:00, david-b@pacbell.net [PATCH] USB: usb hub, don't check speed before reset Signaling (even D- vs D+ pullup) may not be stable for a while. At least one OTG root hub won't reliably (<10%) report device speed until after reset (and the OTG state transitions have quiesced for a while). This patch makes that not matter. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.37, 2004-07-14 15:08:05-07:00, luca.risolia@studio.unibo.it [PATCH] USB: W99[87]CF fix Signed-off-by: Luca Risolia Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.36, 2004-07-14 15:07:48-07:00, david-b@pacbell.net [PATCH] USB: usb host side updates, mostly for suspend This adds some of the infrastructure needed to support some more USB capabilities: - CONFIG_USB_SUSPEND, so Linux can put individual devices into the USB "suspend" state. They can (sometimes) use "remote wakeup" to resume the host; or they can each be resumed by the host. + New usbcore device selective suspend/resume APIs * Define them, as stubs for now * Call them on the paths sysfs uses (renamed functions) + HCD support * Define root hub suspend calls; delegate them to HCDs. * OHCI and EHCI can suspend/resume root hubs that way. * Not called yet, until suspend/resume calls exist - CONFIG_USB_OTG, which depends on the selective suspend APIs to allow devices to switch roles (host to peripheral, etc). This patch just adds a few key flags in usb_bus, needed by usbcore (during enumeration) and by HCD and OTG controllers on OTG-capable boards. - Related bugfix: power budgeting is supposed to place a 100mA per port (non-OTG) for bus-powered devices. This patch changes no behavior; later patches will do that, and they'll be smaller because of this. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.35, 2004-07-14 15:07:29-07:00, abbotti@mev.co.uk [PATCH] USB: ftdi_sio VID/PID updates Greg, This patch adds various VID/PIDs to the ftdi_sio driver that I've accumulated from the ftdi-usb-sio-devel mailing list, and one from the 2.4 kernel sources: * Interbiometrics USB I/O boards VID/PIDs from 2.4 kernel (Rudolf Gugler). * Intrepid Control Systems ValueCAN and NeoVI VID/PIDs from Scott Wolchok. * Falcom Twist USB GPRS modem VID/PID from Justin Schoeman. * Suunto Sports instrument PID from Panu Kekalainen. Also a few minor clean-ups: * Removed a stray PID macro constant FTDI_GUDEADS_889_PID. * Copied the Inside Accesso VID/PID into the FT232BM ID table so that the "combined" table is a proper union of the others (unless I've missed something else). * Added a comment that the OCT US101 is also rebadged as a SIIG Inc. US2308. Signed-off-by: Ian Abbott Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.34, 2004-07-14 15:07:09-07:00, abbotti@mev.co.uk [PATCH] USB: ftdi_sio debug trace for TIOCMSET Someone spotted that ftdi_sio outputs a debug trace for TIOCMGET, but not for TIOCMSET, so this patch adds a debug trace for TIOCMSET too. Signed off by: Ian Abbott Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.33, 2004-07-14 15:06:51-07:00, lcapitulino@prefeitura.sp.gov.br [PATCH] USB: usb/core/hcd.c::usb_init() missing audit. Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.32, 2004-07-14 15:06:33-07:00, aj@net-lab.net [PATCH] USB: usbserial/ipaq update However, attached I provide you a patch against 2.6.7 which should add the ASUS A620 PDA to the ipaq Kernel module. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.31, 2004-07-14 15:06:15-07:00, frankie@cse.unsw.edu.au [PATCH] USB: unusual_devs.h update added another device to unusual_devs.h. Its a Sony Clie PEG-675C. Now I can mount the memory stick. cat /proc/bus/usb/devices T: Bus=03 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 18 Spd=12 MxCh= 0 D: Ver= 1.10 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=16 #Cfgs= 1 P: Vendor=054c ProdID=0099 Rev= 1.00 S: Manufacturer=Sony S: Product=Sony PEG Mass Storage C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 6mA I: If#= 0 Alt= 0 #EPs= 3 Cls=08(stor.) Sub=05 Prot=00 Driver=usb-storage E: Ad=81(I) Atr=03(Int.) MxPS= 64 Ivl=1ms E: Ad=02(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.30, 2004-07-14 15:02:24-07:00, olh@suse.de [PATCH] USB: fix SN9C10[12] driver for ia64 On Sun, Jul 11, Luca Risolia wrote: > This single patch contains some updates and cleanups for > the W996[87]CF driver and a new experimental V4L2 driver > for SONiX SN9C10[12] PC Camera Controllers connected to various > image sensors. I have not divided the patch in two logical > sub-patches becouse of two independent changes in one common > file, KConfigure. Since this mailing list refused the patch, > due to its size, I have uploaded it here, as > Documentation/SubmittingPatches suggests: I need this patch for x86_64. CC [M] drivers/usb/media/sn9c102_core.o In file included from drivers/usb/media/sn9c102.h:34, from drivers/usb/media/sn9c102_core.c:43: include/asm/rwsem.h:55: error: redefinition of `struct rw_semaphore' In file included from drivers/usb/media/sn9c102.h:34, from drivers/usb/media/sn9c102_core.c:43: include/asm/rwsem.h:79:1: warning: "__RWSEM_INITIALIZER" redefined In file included from include/linux/rwsem.h:25, from include/asm/semaphore.h:43, from include/linux/sched.h:18, from include/linux/module.h:10, from drivers/usb/media/sn9c102_core.c:21: include/linux/rwsem-spinlock.h:49:1: warning: this is the location of the previous definition include/asm/rwsem.h:87: warning: static declaration for `init_rwsem' follows non-static include/asm/rwsem.h:100: warning: `__down_read' declared inline after being called include/asm/rwsem.h:100: warning: static declaration for `__down_read' follows non-static include/asm/rwsem.h:122: warning: `__down_read_trylock' declared inline after being called include/asm/rwsem.h:122: warning: static declaration for `__down_read_trylock' follows non-static include/asm/rwsem.h:146: warning: `__down_write' declared inline after being called include/asm/rwsem.h:146: warning: static declaration for `__down_write' follows non-static include/asm/rwsem.h:171: warning: `__down_write_trylock' declared inline after being called include/asm/rwsem.h:171: warning: static declaration for `__down_write_trylock' follows non-static include/asm/rwsem.h:184: warning: `__up_read' declared inline after being called include/asm/rwsem.h:184: warning: static declaration for `__up_read' follows non-static include/asm/rwsem.h:208: warning: `__up_write' declared inline after being called include/asm/rwsem.h:208: warning: static declaration for `__up_write' follows non-static include/asm/rwsem.h:233: warning: `__downgrade_write' declared inline after being called include/asm/rwsem.h:233: warning: static declaration for `__downgrade_write' follows non-static make[3]: *** [drivers/usb/media/sn9c102_core.o] Error 1 Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.29, 2004-07-14 15:02:08-07:00, greg@kroah.com [PATCH] USB: sort the order in which the usb-serial drivers get built all other usb drivers get built in alphabetical order, why not these? Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.28, 2004-07-14 15:01:49-07:00, greg@kroah.com [PATCH] USB: remove CONFIG_USB_SERIAL_DEBUG This involved reworking the usb_serial_debug_data() function too. Based on a request from SuSE, and numerous user confusions with how to enable this option. Now that all usb-serial drivers are using module_param() it can be set from the boot command line if the drivers are built into the kernel. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.27, 2004-07-14 15:01:31-07:00, greg@kroah.com [PATCH] USB: change all usbserial drivers to use module_param() Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.26, 2004-07-14 15:01:10-07:00, luca.risolia@studio.unibo.it [PATCH] Updates for W99[87]CF and new SN9C10[12] driver This single patch contains some updates and cleanups for the W996[87]CF driver and a new experimental V4L2 driver for SONiX SN9C10[12] PC Camera Controllers connected to various image sensors. I have not divided the patch in two logical sub-patches becouse of two independent changes in one common file, KConfigure. More informations about the SN9C10[12] can be found below in the documentation. The driver is marked as "EXPERIMENTAL", meaning that there are no known bugs, but further testing is necessary before considering it stable. This the first driver using the new SBGGR8 video format, which has been recently added to the mainline kernel, so there are no available user application at the moment: this is one more reason why it should be in the kernel now. Changes in W996[87]CF: - remove w9968cf_externaldef.h now that ovcamchip.h is in the kernel; - mark user pointers with __user in a cleaner way to avoid sparse warnings; - use appropriate exclusive wait macro during open(); - replace info(), err(), warn() with dev_info(), dev_err(), dev_warn(), pr_debug(), pr_info(); - replace usb_unlink_urb() + wait_for_completion() with usb_kill_urb(); - fix memory offsets for buffers in the chip to be used with generic image sensors; - 'vppmod_load', 'debug', 'specific_debug' and 'simcams' module parameters are now writeable by default; - fix possible race conditions between disconnect() and open(); - add automatic 'ovcamchip' module loading option with 'ovmod_load' module parameter; - get rid of deprecated intermodule communication routines and use the correct module registration/unregistration approach; - remove period at the end of kernel messages; - fix several typos; - use MODULE_VERSION() macro; - other small internal cleanups; - documentation updates. Signed-off-by: Luca Risolia Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.25, 2004-07-14 15:00:36-07:00, david-b@pacbell.net [PATCH] USB: usb ethernet gadget, minor fixes + basic OTG support Update CDC Ethernet/RNDIS gadget driver to the latest: - Basics of OTG support: providing the OTG descriptor in each configuration (as needed). No HNP yet. - Stop issuing partial-packet reads. There's some hardware that only counts reads in packets, not bytes, so let's not bother. There are still software checks to catch framing gone wild. - Fix a small bug that crept in with a memory leak fix: after RNDIS requests, ep0 responses would use the RNDIS completion handler even for non-RNDIS requests. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.24, 2004-07-14 15:00:19-07:00, david-b@pacbell.net [PATCH] USB: usb gadget zero, basic OTG updates This patch teaches "gadget zero" enough about OTG to pass simple USBCV tests, mostly by including OTG descriptors in each configuration. It tests and reports OTG status, as reported by the USB controller driver. It also adds an option to build gadget zero to act as the designated OTG "HNP Test Device", which exists primarily to trigger HNP. However, it won't currently request HNP. Includes other minor tweaks: delete a timer on disconnect, reset the req->zero flag, don't autoresume after disconnect. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.23, 2004-07-14 15:00:02-07:00, david-b@pacbell.net [PATCH] USB: usb gadget API updates Gadget API updates, including new features: - Adds several new optional calls that can be made to the USB peripheral controller: * VBUS session reporting, for use mostly by external transcievers (such as isp1301). Detection of VBUS power is the first step in enumeration, and usually corresponds to a device being plugged into a hub. * "Soft Connect" feature, wherein the D+ pullup is under gadget driver control. This is a second step during enumeration, which lets the hub see the new device. (Based on a patch by Alex Sanks .) * Control over VBUS current draw. So for example this is what a gadget driver uses during SET_CONFIGURATION to say "it's OK to draw 300 mA from VBUS to recharge". - Basic interfaces to support device-side USB OTG. Feature flags and descriptors are in already. * Reports whether the device has a Mini-AB port, so that OTG support (desriptors etc) is required. * Reports OTG device feature flags for HNP. (The OTG spec requires user interfaces to report this stuff.) Say if this is a B-Peripheral or an A-Peripheral. * Says that usb_gadget_wakeup() is how to access SRP, and usb_gadget_disconnect() is how to access HNP. - Minor updates/cleanups to comments (Linux 2.5-->2.6 etc) Currently there's no support for SRP-only OTG devices. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.22, 2004-07-14 14:59:45-07:00, david-b@pacbell.net [PATCH] USB: usb gadgetfs, handle omap_udc Tell gadgetfs about omap_udc. Add some missing __user annotations. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.21, 2004-07-14 14:59:25-07:00, david-b@pacbell.net [PATCH] USB: usb serial gadget, add omap_udc This lets the serial gadget work with another controller. Tell serial about omap_udc. This driver still needs updating to use the endpoint autoconfig suppport; like Gadget Zero, it really shouldn't need _any_ hardware-specific #ifdeffery. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.20, 2004-07-14 14:52:49-07:00, greg@kroah.com USB: oops, revert hub patch that wasn't supposed to make it into this patch series yet. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.19, 2004-07-14 14:52:00-07:00, david-b@pacbell.net [PATCH] USB: misc ohci tweaks Various minor OHCI tweaks; - Fix osdl bugid=2503 by: * Change needlessly-scarey message (WARN_ON dumps stack) * Tries cleaning up, as if it's just IRQ lossage. - Force IRQs off when shutting down a controller that was already stopped ... just in case. - Allow suspending OHCI during driver initialization, to support more aggressive power management. - Fix some misleading/wrong debug messages. Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.18, 2004-07-14 14:51:29-07:00, david-b@pacbell.net [PATCH] USB: usbnet, Sitecom LN-029 ID for another AX8817x based usb2 Ethernet adapter. From: Tim Chick Signed-off-by: David Brownell Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.17, 2004-07-14 14:51:11-07:00, dhollis@davehollis.com [PATCH] USB: ax8817x_unbind does not free the interrupt URB after unlinking ax8817x_unbind does not free the interrupt URB after unlinking. Noticed that the net->status already has a flag for link so my private structure variable for link was redundant. Worked around this and was able to kill off the unique ax8817x_get_link() function in the process. Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.16, 2004-07-14 14:48:36-07:00, dhollis@davehollis.com [PATCH] USB: usbnet:ax8817x - use interrupt URB for link detection This patch uses the interrupt URB on the ax8817x for link detection. This allows the driver to notify userspace when link drops/comes back so it can take action such as run dhclient, etc. I was also able to reduce the bind function by using some of the stock mii_xxx calls as well as my own for handling initial link negotiation. Signed-off-by: David Hollis Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.15, 2004-07-14 14:48:19-07:00, stern@rowland.harvard.edu [PATCH] USB: Allow NULL argument in usb_unlink_urb() and usb_kill_urb() It makes sense for APIs involved in cleanup activities (like kfree()) to accept NULL arguments. Doing so frees drivers from the responsibility of checking whether each resource was actually acquired before trying to release it. Accordingly, this patch makes usb_unlink_urb() and usb_kill_urb() accept a NULL pointer (which used to be acceptable until I changed it) and notes explicitly in the kerneldoc that such arguments are permitted. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.14, 2004-07-14 14:47:56-07:00, lcapitulino@prefeitura.sp.gov.br [PATCH] USB: usb/core/file.c::usb_major_init() cleanup. This patch does a cleanup for usb/core/file.c::usb_major_init(), which is: *) in error condition, returns the error code from register_chrdev(), insted returning -EBUSY; *) adds missing audit for class_register(); *) only calls devfs_mk_dir() if the prior calls have success. Signed-off-by: Luiz Capitulino Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.13, 2004-07-14 14:47:36-07:00, ddstreet@ieee.org [PATCH] USB: fix usbfs mount options ignored bug Ok here is a patch to make the mount options work. In addition to implementing the remount function, it removes the parse_options() call from usb_fill_super and adds a "ignore" flag around the mounting that gets done in create_special_files. The parse_options call in usb_fill_super is removed because it is not needed when remount is implemented. The ignore_mount flag is needed because the simple_pin_fs function calls remount with no mount options - i.e. it's not a real mount. So the mount options would be cleared out. The ignore_mount flag causes the remount function to only act on real mounts. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.12, 2004-07-14 14:47:17-07:00, greg@kroah.com [PATCH] USB: more sparse fixups that found a real bug in the se401 driver Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.11, 2004-07-14 14:46:59-07:00, stern@rowland.harvard.edu [PATCH] USB: Fix endianness bug in UHCI driver This patch fixes a byte-swapping error in the UHCI driver. It has been present since 2.6.6 and only got tracked down just now! Thanks a lot to Michel Roelofs for all his help and testing. This should be pushed through to Linus in time to appear in 2.6.8, if possible. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.10, 2004-07-14 14:46:38-07:00, mika@osdl.org [PATCH] USB: Trivial fix to include/linux/usb.h Hi Greg! I am compiling allmodconfig with some extra gcc warnings enabled (-W -Wno-unused -Wno-sign-compare -Winline -Wundef) and got this one: CC [M] security/root_plug.o In file included from security/root_plug.c:30: include/linux/usb.h:358: warning: `inline' is not at beginning of declaration Patch is trivial: Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.9, 2004-07-14 14:44:50-07:00, olh@suse.de [PATCH] USB: fix lockup with 2.6 keyspan_pda driver I suggest to put the pointer to port instead of the pointer to the pointer to port to the workqueue data. Did that driver ever work with 2.6? Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.8, 2004-07-14 14:44:29-07:00, greg@kroah.com [PATCH] USB: more sparse cleanups (all pretty much NULL usages.) Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.7, 2004-07-14 14:44:09-07:00, greg@kroah.com [PATCH] USB: fix up the wording in the emi26 firmware file to match the other kernel firmware files. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.6, 2004-07-14 14:42:40-07:00, stern@rowland.harvard.edu [PATCH] USB: Remove hub's children upon unbinding This patch fixes a logical hole in the hub driver. It's possible for the driver to be unbound from a hub without physically unplugging the hub. For example, writing 0 into the bConfigurationValue attribute file will have this effect. When this happens, we need to make sure that all the child devices of the hub are logically disconnected and their ports disabled. That's what this patch does. It's a little bit tricky because we can't simply call usb_disconnect() from within the hub driver's disconnect() routine. While that routine is running it holds the usb bus writelock, but usb_disconnect() would try to acquire it again. Instead schedule_work() is used, so after a brief delay the children will be removed. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.5, 2004-07-14 14:41:28-07:00, stern@rowland.harvard.edu [PATCH] USB: Store pointer to usb_device in private hub structure This patch adds a pointer to the hub's usb_device into the usb_hub private structure. It's a small change, and permits a small amount of simplification in a few spots, i.e., avoid calling interface_to_usbdev(). This doesn't really do much in itself, but it's a prerequisite for the next patch. (A situation arises where we can't use the interface pointer to find the usb_device because the interface might not exist.) Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.4, 2004-07-14 14:36:54-07:00, stern@rowland.harvard.edu [PATCH] USB: Don't ask for string descriptor lengths Okay, here's a revised patch (as332b). This tries first to ask for 255 bytes, and if that fails then it asks for the length and the full descriptor. Hopefully nobody will object to applying this version... You know, it occurs to me that the have_langid field in usb_device could easily be eliminated. Just set string_langid to -1 during initialization and test for whether or not it is >= 0. I'll do that some other time. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.3, 2004-07-14 14:29:19-07:00, stern@rowland.harvard.edu [PATCH] USB: Make hub driver use usb_kill_urb() This is a rerun of as278, updated to match the current source. It changes the hub driver, replacing calls to synchronous usb_unlink_urb() with usb_kill_urb() and removing the machinery formerly needed to synchronize the status URB handler with the rest of the driver. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.2, 2004-07-14 14:28:52-07:00, stern@rowland.harvard.edu [PATCH] USB: Add usb_kill_urb() This patch is a slightly revised version of as277c, updated to match the current source. The only difference from the older version is that this makes urb->use_count into an atomic_t, to avoid the overhead of an extra locking step each time an URB is submitted and given back. The important features of this patch are: -EPERM added to Documentation/usb/error-codes.txt. Failure to use URB_ASYNC_UNLINK with usb_unlink_urb() is deprecated in the documentation. New ->reject and ->use_count fields added to struct urb. The reject field is protected by urb->lock, and locking is required only in usb_kill_urb() which doesn't have to be fast. Single wait_queue used for all processes waiting inside usb_kill_urb(). The wait queue is woken up only when an URB is given back with ->reject set. usb_rh_status_dequeue() changed to return int. It looks like this function should be declared static; it's not used outside the hcd.c file. Prototype for unlink_urb() in struct usb_operations is changed to include a status code argument. This is necessary so that the different unlink paths can return -ENOENT and -ECONNRESET as appropriate. Support for synchronous usb_unlink_urb() has been removed; such calls are passed to usb_kill_urb(). Kerneldoc for usb_unlink_urb() is updated. usb_kill_urb() added to urb.c. hc_simple() host driver is partially updated -- it should compile but it won't really work right. Signed-off-by: Alan Stern Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1757.67.1, 2004-07-14 14:25:56-07:00, greg@kroah.com [PATCH] USB: add 3 Phidget device ids to the HID blacklist. Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.24.2, 2004-07-14 16:20:05-04:00, jgarzik@pobox.com [PCI, libata] Fix "combined mode" PCI quirk for ICH6 The hardware vendor, in their infinite wisdom, make the combined mode configuration register different between ICH5 and ICH6. Take this into account. ChangeSet@1.1784.24.1, 2004-07-14 16:11:41-04:00, Sergio.Gelato@astro.su.se [PATCH] libata: fix kunmap() of incorrect page, in PIO data xfer Obvious bug. Fixes highmem oops. ChangeSet@1.1784.1.95, 2004-07-14 12:22:22-07:00, greg@kroah.com Merge kroah.com:/home/greg/linux/BK/bleed-2.6 into kroah.com:/home/greg/linux/BK/i2c-2.6 ChangeSet@1.1788, 2004-07-14 15:19:30-04:00, jgarzik@pobox.com Merge pobox.com:/spare/repo/netdev-2.6/misc into pobox.com:/spare/repo/net-drivers-2.6 ChangeSet@1.1784.7.10, 2004-07-14 15:13:01-04:00, janiceg@us.ibm.com [netdrvr acenic] fix RX descriptor memory ordering ChangeSet@1.1784.7.9, 2004-07-14 15:06:52-04:00, g.liakhovetski@gmx.de [wireless airo] fix alignment problem (particularly on ARM) Bugzilla #2905 ChangeSet@1.1784.7.8, 2004-07-14 15:01:55-04:00, jgarzik@pobox.com [netdrvr tg3] bump version and reldate ChangeSet@1.1784.7.7, 2004-07-14 15:00:50-04:00, anton@samba.org [PATCH] tg3 bug During receive processing, the tg3 card updates rx_producer (the hardware position in the receive ring) and the opaque cookie. Due to PCI rules the stores happen in order. However the cpu may reorder the reads. In these sort of cases there is usually a data dependency between reading the index and looking up the data (since we use the index to load the data). I think all cpus except alpha guarantee the reads happen in order in this case. However in this particular case we load hw_idx, compare it to sw_idx and then use sw_idx to locate the opaque cookie. There is no data dependency in this case. We need a read memory barrier between the read of rx_producer and the opaque cookie to enforce ordering. Thanks to Olof Johansson, Michael Chan and Broadcom for their assistance in finding this bug. Signed-off-by: Anton Blanchard ChangeSet@1.1784.14.14, 2004-07-14 11:51:29-07:00, khali@linux-fr.org [PATCH] I2C: Refine detection of LM75 chips The LM75 detection method was a bit loose so far and would accept non-LM75-compatible chips from times to times. It should be better now. Additionally, the help for the lm75 driver was reworked because we now know that the LM75 and the LM77 are not compatible. Signed-off-by: Jean Delvare Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.14.13, 2004-07-14 11:50:09-07:00, mhoffman@lightlink.com [PATCH] I2C: Remove extra inits from lm78 driver This patch is from the lm_sensors project CVS, from this revision: 1.63 (mds) remove initialization of limits by driver It is better to set these limits by a combination of /etc/sensors.conf and 'sensors -s'; "mechanism not policy." Please apply. Signed-off-by: Mark M. Hoffman Signed-off-by: Greg Kroah-Hartman ChangeSet@1.1784.7.6, 2004-07-14 14:42:35-04:00, akpm@osdl.org [PATCH] fix airo oops-on-removal From: Bill Nottingham airo creates /proc/driver/aironet/ on device activation. However, the device can be renamed - then on teardown it tries to remove the wrong directory. The removal of /proc/driver/aironet then runs afoul of the BUG_ON() in remove_proc_entry. This fixes it by keeping a copy of the name of the directory it created. (It doesn't actually solve the problem of the stats directory still being /proc/driver/aironet/eth0 when you rename the device to, say, 'joe'. But that patch would be a little less trivial.) Signed-off-by: Andrew Morton ChangeSet@1.1784.7.5, 2004-07-14 14:42:25-04:00, margitsw@t-online.de [PATCH] prism54 Fix wrong type for BSSID 2004-07-12 Margit Schubert-While * The OID type for BSSID was incorrectly set to type SSID. It should be type RAW. This lead to interesting reporting by "iwpriv ethX g_bssid". (Which caused garbage output and possibly an out of bound) * Be ultra-cautious in reporting SSID by changing the "%s" to "%.*s" and passing the length. (Prompted by the false type above, whereby length = 0 and a %s on a garbage field) ChangeSet@1.1784.7.4, 2004-07-14 14:26:37-04:00, jgarzik@pobox.com [netdrvr dmfe] remove ALi pci id It's tulip driver, and tulip driver performs better than dmfe (yet some distro installers pick this driver to use). Requested by ALi. ChangeSet@1.1784.7.3, 2004-07-14 14:26:11-04:00, trivial@rustcorp.com.au [PATCH] [TRIVIAL 2.6] sk98lin: kill dup include From: a.othieno@bluewin.ch (Arthur Othieno) ChangeSet@1.1784.7.2, 2004-07-14 14:25:46-04:00, proski@gnu.org [netdrvr pci-skeleton] refresh Here it is. The patch fixes all compile errors and warnings in pci-skeleton.c. The "debug" parameter lacks corresponding variable, so I removed it to avoid a warning on module load. Obsolete pci_power_on() and pci_power_off() have been replaced with the new code using pci_set_power_state(), pci_save_state() and pci_restore_state(). The driver has been tested by compiling it as module and as part of the kernel. ChangeSet@1.1784.1.94, 2004-07-14 10:14:43-07:00, mika@osdl.org [PATCH] Fix 'unsigned' < 0 checks Using "-W" found a few places that should probably use signed variables since they can contain (and check for) negative error values. ChangeSet@1.1784.1.93, 2004-07-14 09:59:40-07:00, jbglaw@lug-owl.de [PATCH] mconf.c: Honor $LINES and $COLUMNS if TIOCGWINSZ failed While reading code, I found this buglet. If the TIOCGWINSZ fails, mconf.c assumes 24/80 as screen size, without honoring the LINES and COLUMNS environment variables. This is the shorter and IMHO more correct version. Signed-off-by: Jan-Benedict Glaw Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.92, 2004-07-14 09:40:17-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] mcdx irq handling cleanup mcdx has different IRQ numbers for all drives; irq handler needs a pointer to structure describing the drive in question. However, instead of passing such pointer at request_irq() time and having it passed to mcdx_intr() for free, mcdx.c sticks the pointer in question into an array indexed by IRQ number and has mcdx_intr() go look it up there. Cleaned up, array killed. ChangeSet@1.1784.1.91, 2004-07-14 09:38:57-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: sound compat ioctls annotations Trivial annotations + typo fix in _snd_ioctl32_hwdep_dsp_image() (we want to copy 32bit structure from userland, convert it to native one and do normal ioctl on it; see the first changed line below for what's really happening...) ChangeSet@1.1784.1.90, 2004-07-14 09:38:46-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: (ipv6/netfilter) initializer fix Missing '=' in C99 initializer ChangeSet@1.1784.1.89, 2004-07-14 09:38:34-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: #if where #ifdef should've been (saa7146) ChangeSet@1.1784.1.88, 2004-07-14 09:38:23-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: more drivers/usb/* annotations ChangeSet@1.1784.1.87, 2004-07-14 09:38:12-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: a couple of inline fixes in drivers'/scsi Usual "inline used before definition" fixes in nsp32.c and sg.c ChangeSet@1.1784.1.86, 2004-07-14 09:38:01-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: more drivers/scsi annotations Almost all are trivial, aacraid/linit.c annotations had caught a bug - copy_from_user() where copy_in_user() should've been. ChangeSet@1.1784.1.85, 2004-07-14 09:37:49-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] pointer-to-int done the canonical way Extraction of int from pointer is slightly broken in several places. ChangeSet@1.1784.1.84, 2004-07-14 09:37:38-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: __forced added to casts in arch-specific code Casts from __user to address-space-agnostic in amd64 and i386 made explicit (__force added; in these places we pass userland pointer to arch-specific code that handles kernel and userland pointers the same way). csum_partial_copy_*() annotated properly ChangeSet@1.1784.1.83, 2004-07-14 09:37:27-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: aout32 sparse fixes for compat this basically repeats the stuff done to fs/binfmt_aout.c for amd64 and sparc64 aout32. ChangeSet@1.1784.1.82, 2004-07-14 09:37:15-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: missing cpumask_t bits on sparc (no, it still doesn't fix sparc32-smp - just partial compile fixes ;-/) ChangeSet@1.1784.1.81, 2004-07-14 09:37:04-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: read_descriptor_t annotation We have a fun situation with read_descriptor_t - all its instances end up passed to some actor; these actors use desc->buf as their private data; there are 5 of them and they expect resp: struct lo_read_data * struct svc_rqst * struct file * struct rpc_xprt * char __user * IOW, there is no type safety whatsoever; the field is essentially untyped, we rely on the fact that actor is chosen by the same code that sets ->buf and expect it to put something of the right type there. Right now desc->buf is declared as char __user *. Moreover, the last argument of ->sendfile() (what should be stored in ->buf) is void __user *, even though it's actually _never_ a userland pointer. If nothing else, ->sendfile() should take void * instead; that alone removes a bunch of bogus warnings. I went further and replaced desc->buf with a union of void * and char __user *. ChangeSet@1.1784.1.80, 2004-07-14 09:28:01-07:00, bjorn.helgaas@hp.com [PATCH] fix ia64 early_printk build problem Rename PCDP_TABLE_GUID back to HCDP_TABLE_GUID to get the file to compile again. This change is against current 2.6 BK and is under CONFIG_IA64_EARLY_PRINTK_UART. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.79, 2004-07-14 09:27:50-07:00, bunk@fs.tum.de [PATCH] remove outdated Stallion contact information The patch below (applies against both 2.4 and 2.6) removes the bouncing email address from all files and removes the outdated MAINTAINERS entry. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.78, 2004-07-14 09:27:38-07:00, hunold@convergence.de [PATCH] fix return codes after i2c_add_driver() in tea6415c and tea6420 In two of my i2c helper drivers the return value of i2c_add_driver() is ignored. Thanks to Arthur Othieno for finding these bugs. Signed-off-by: Arthur Othieno Signed-off-by: Michael Hunold Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.77, 2004-07-14 09:27:27-07:00, hunold@convergence.de [PATCH] fix saa7146 compilation From: Colin Leroy This patch fixes a compilation error on 2.6.8-rc1. Here's the error: drivers/media/common/saa7146_video.c:3: conflicting types for `memory' include/asm-m68k/setup.h:365: previous declaration of `memory' make[3]: *** [drivers/media/common/saa7146_video.o] Error 1 Signed-off-by: Colin Leroy Signed-off-by: Michael Hunold Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.76, 2004-07-14 09:27:16-07:00, hirofumi@mail.parknet.co.jp [PATCH] autoselect FAT_FS in config Signed-off-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.75, 2004-07-14 09:27:05-07:00, akpm@osdl.org [PATCH] remove struct_cpy() Only two architectures implement it, so afs broke the build. Remove struct_cpy() altogether, and use structure assignments. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.74, 2004-07-14 09:26:53-07:00, pluto@pld-linux.org [PATCH] `unknown symbol' in sound/oss/kahlua.ko needs unknown symbol udelay Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.73, 2004-07-14 09:26:42-07:00, bunk@fs.tum.de [PATCH] floppy.c: remove superfluous variable initialization From: Kam Leo Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.72, 2004-07-14 09:26:31-07:00, bunk@fs.tum.de [PATCH] #ifndef guard percpu_counter.h and blockgroup_lock.h Insert header guards to allow possible multiple inclusion for include/linux/percpu_counter.h and include/linux/blockgroup_lock.h Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.71, 2004-07-14 09:26:20-07:00, hch@lst.de [PATCH] small style fixups for the new automount code Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.70, 2004-07-14 09:26:09-07:00, petri.koistinen@iki.fi [PATCH] Fix 3c59x.c uses of plain integer as NULL pointer This patch will fix 3Com "Vortex" and "Boomerang" ethernet driver sparse warnings about using plain integer as NULL pointer. Signed-off-by: Petri T. Koistinen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.69, 2004-07-14 09:25:57-07:00, eger@havoc.gtf.org [PATCH] pmac_zilog: initialize port spinlock on all init paths pmac_zilog: initialize the serial ports' spinlocks even if console over serial is not enabled; disable this driver by default for ppc This lock not being initialized was Oopsing my TiBook :-P Signed-off-by: David Eger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1784.1.68, 2004-07-13 16:58:30-07:00, torvalds@ppc970.osdl.org ppc64: fix up si_addr usage Al's last changes mean that it is now annotated as a user pointer, and we want to avoid warnings. ChangeSet@1.1784.1.67, 2004-07-13 11:30:17-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] compat_fillonedir() warning fix access_ok() expects a pointer, not unsigned long. It's not a problem on platforms that have this guy done as a macro (or ones that do not use fs/compat.c at all), but that's still wrong and on some platforms that care we actually have access_ok() as inlined function. Bogus cast removed. ChangeSet@1.1784.1.66, 2004-07-13 11:16:58-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] __vfs_follow_link() made inline again __vfs_follow_link() really should be inline; that's a special case since we are in the middle of recursion and really want to conserve stack space. Moved before the first use, made inline again. ChangeSet@1.1784.1.65, 2004-07-13 11:16:47-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: more fs/* NULL noise removal (partially based on patch from Mika Kukkonen) ChangeSet@1.1784.1.64, 2004-07-13 11:04:12-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: assorted drivers/* NULL noise removal ChangeSet@1.1784.1.63, 2004-07-13 11:03:58-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: net/* NULL noise removal ChangeSet@1.1784.1.62, 2004-07-13 11:03:46-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: drivers/usb NULL noise removal ChangeSet@1.1784.1.61, 2004-07-13 11:03:33-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: drivers/net partial NULL noise removal ChangeSet@1.1784.1.60, 2004-07-13 11:03:20-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: drivers/media NULL noise removal ChangeSet@1.1784.1.59, 2004-07-13 11:03:08-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: gemtek ioctl fix Dumb Typo(tm) - the first bug caught by 0/NULL checks (arg is really a kernel pointer there, so memset() is actually OK - results will be copied to userland by caller. Or would be, if we would not oops ;-) ChangeSet@1.1784.1.58, 2004-07-13 11:02:57-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: ipc compat annotations and cleanups ipc compat code switched to compat_alloc_user_space() and annotated. ChangeSet@1.1784.1.57, 2004-07-13 11:02:45-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: arch/* NULL noise removal ChangeSet@1.1784.1.56, 2004-07-13 11:02:33-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: signal annotation ss_sp in struct sigaltstack made __user ->si_addr and ->sival_ptr made __user your ->sa_restorer and ->sa_handler changes propagated users of these guys annotated on i386/amd64/alpha/sparc/sparc64 ChangeSet@1.1784.1.55, 2004-07-13 11:02:21-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: alpha topology.h compile fix Missing bits of cpumask_t conversion ChangeSet@1.1784.1.54, 2004-07-13 11:02:10-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: alpha sparse infrastructure * added usual CHECK assignment in Makefile * switched uaccess.h to __check_uptr() * added L on long constants (ones missed earlier) * added __user in osf_sys.c (duh - I've added __user to cast in the initializer, but forgot to add it in declaration) ChangeSet@1.1784.1.53, 2004-07-13 11:01:58-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: alpha NULL noise removal ChangeSet@1.1784.1.52, 2004-07-13 11:01:46-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: drivers/sbus annotation ChangeSet@1.1784.1.51, 2004-07-13 11:01:35-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: drivers/sbus fixes a) vfc is not 64bit-clean, marked as such in Kconfig b) aurora is simply broken - still uses tqueues. Marked as broken. c) vfc does dereferencing of userland pointer, right after having carefully copied the data to kernel space ;-) Fixed. d) vfc ->mmap() had missed prototype change. Fixed. e) BPP ioctls are misdeclared - they should've been _IO(...) instead of _IOR(..., void). Too late to fix, but we can at least make them _IOR(..., char) - same value, but doesn't try to find sizeof(void). ChangeSet@1.1784.1.50, 2004-07-13 11:01:23-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: NULL noise removal in drivers/sbus ChangeSet@1.1784.1.49, 2004-07-13 11:01:12-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: tms380tr.c fix tms380tr is used both by ISA and PCI drivers. Enabling/disabling DMA is done only for ISA ones (it's protected by if (dev->dma > 0) and PCI ones leave it 0), but it's compiled unconditionally. Which breaks on platforms that don't have that ISA crap at all, but support PCI just fine. Code in question placed under ifdef CONFIG_ISA. ChangeSet@1.1784.1.48, 2004-07-13 11:01:01-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: compile fix for rrunner on big-endian platforms bitrot strikes again... ChangeSet@1.1784.1.47, 2004-07-13 11:00:50-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: saa fix direct write to userland pointer. ChangeSet@1.1784.1.46, 2004-07-13 11:00:39-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: isdn compile fix for platforms with HZ > 1000 Division by zero is an ugly thing... We are safe wrt overflows, since the maximal value we ever pass is 10000 - not enough to overflow unless you've got a platform with HZ > 200000. ChangeSet@1.1784.1.45, 2004-07-13 11:00:27-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: usb ioctl cleanups usb ioctls in compat_ioctl.c switched to compat_alloc_user_space() and cleaned up; ioctl structures annotated. ChangeSet@1.1784.1.44, 2004-07-13 11:00:16-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: VIDIOCSWIN compat_ioctl fixes In handling of VIDIOCSWIN for 32bit on 64bit platforms: * switched to compat_alloc_user_space() * fixed memory corruption in copying arguments from userland * fixed arithmetic overflows * added missing checks for get_user() results and corresponding returns with -EFAULT. ChangeSet@1.1784.1.43, 2004-07-13 11:00:06-07:00, viro@parcelfarce.linux.theplanet.co.uk [PATCH] sparse: switching afs to kvec - afs and rxrpc switched to kvec; definition of kvec moved to uio.h (duh). - afs/mntpt.c got missing cast added. at that point afs is sparse-clean and rxrpc has only one remaining warning (setsockopt from local variable, protected by set_fs()). ChangeSet@1.1784.1.41, 2004-07-13 00:42:45-05:00, stevef@smfhome.smfdom Set DevMajor/DevMinor when querying info on remote char/block devices Signed-off-by: Steve French (sfrench@us.ibm.com) ChangeSet@1.1784.1.40, 2004-07-12 23:47:18-05:00, stevef@smfhome1.smfdom Set Type field when creating block/char/pipe e.g. via mknod. Fixing problem mentioned by Jeremy Allison remove spurious warning message logged on mount with credentials file (pointed out by Richard Hughes) Signed-off-by: Steve French (sfrench@us.ibm.com) ChangeSet@1.1784.1.39, 2004-07-12 21:41:31-05:00, stevef@smfhome.smfdom fix the null pointer sparse warning al viros way (resolving potential merge conflict) Signed-off-by: Steve French (sfrench@us.ibm.com) ChangeSet@1.1784.15.3, 2004-07-13 00:13:32+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 1962/1: S3C2410 - Rename MACH_VR1000 to Thorcom-VR1000 Patch from Ben Dooks Place correct machine name for VR1000 in machine support file. ChangeSet@1.1784.20.1, 2004-07-13 00:03:03+01:00, ben-linux@org.rmk.(none) [ARM PATCH] 1961/1: S3C2410 - fix for UART FIFO size calculation Patch from Ben Dooks Fixes calculation of how many bytes in the RX/TX FIFOs. Previous code failed to check wether the full flags where set before returning the byte counter. This should ensure that the serial driver behaves correctly when the FIFO fills, and not just ignore the input data ChangeSet@1.1784.15.2, 2004-07-12 23:37:33+01:00, jelenz@edu.rmk.(none) [ARM PATCH] 1958/1: make collie use INIT_MACHINE Patch from John Lenz make collie use the new INIT_MACHINE macro instead of arch_initcall. ChangeSet@1.1784.19.15, 2004-07-12 14:27:49-07:00, steiner@sgi.com [PATCH] ia64: Reduce TLB flushing during process migration This patch adds an architecture-specific callout after explicit processor migrations. The callout allows architectures (or platforms) to update TLB specific information (ex., cpu_vm_mask). Signed-off-by: Jack Steiner Signed-off-by: David Mosberger ChangeSet@1.1784.8.13, 2004-07-12 13:28:17-07:00, kaos@sgi.com [PATCH] ia64: build fixes for IA64_MCA_DEBUG_INFO Make mca.c build again with debug enabled. Signed-off-by: Keith Owens Signed-off-by: David Mosberger ChangeSet@1.1784.18.2, 2004-07-12 13:31:38-05:00, shaggy@austin.ibm.com JFS: Add d_hash and d_compare operations for case-insensitive names JFS supports OS/2-compatibility with case-insensitive file names. To avoid multiple dentries for these names, jfs needs to provide the d_hash and d_compare dentry_operations. The operations are only used when the volume was created in OS/2 or with the -O flag. ChangeSet@1.1784.19.13, 2004-07-12 09:09:51-07:00, viro@www.linux.org.uk [PATCH] sparse: drivers/media/* annotation ChangeSet@1.1784.19.12, 2004-07-12 09:09:37-07:00, viro@www.linux.org.uk [PATCH] sparse: blind dereference of userland pointers in ac7110 ChangeSet@1.1784.19.11, 2004-07-12 09:09:26-07:00, viro@www.linux.org.uk [PATCH] sparse: dvb_ringbuffer_pkt_write()/dvb_ringbuffer_write() annotation copy_from_user() moved from dvb_ringbuffer_{write,pkt_write}() to callers; these functions are always getting kernel pointer now. "usermem" argument killed, code annotated. ChangeSet@1.1784.19.10, 2004-07-12 09:09:14-07:00, viro@www.linux.org.uk [PATCH] sparse: drivers/isdn/* annotation ChangeSet@1.1784.19.9, 2004-07-12 09:09:03-07:00, viro@www.linux.org.uk [PATCH] sparse: blind dereference of userland pointers in divasproc ChangeSet@1.1784.19.8, 2004-07-12 09:08:51-07:00, viro@www.linux.org.uk [PATCH] sparse: ISDN ->readstat() and ->writecmd() annotation ->readstat() and ->writecmd() are always getting a userland pointer; marked argument as such, killed "user" flag, killed dead code. ChangeSet@1.1784.19.7, 2004-07-12 09:08:39-07:00, viro@www.linux.org.uk [PATCH] sparse: misc NULL noise in drivers/* ChangeSet@1.1784.19.6, 2004-07-12 09:08:24-07:00, viro@www.linux.org.uk [PATCH] sparse: NULL noise in drivers/isdn ChangeSet@1.1784.19.5, 2004-07-12 09:08:11-07:00, viro@www.linux.org.uk [PATCH] sparse: megaraid annotation ChangeSet@1.1784.19.4, 2004-07-12 09:08:00-07:00, viro@www.linux.org.uk [PATCH] sparse: megaraid inline fixes inlined functions moved, a couple of heavy-weight ones (issue_scb() and meg_cmd_done()) uninlined. ChangeSet@1.1784.19.3, 2004-07-12 09:07:49-07:00, viro@www.linux.org.uk [PATCH] sparse: aacraid annotation ChangeSet@1.1784.19.2, 2004-07-12 09:07:37-07:00, viro@www.linux.org.uk [PATCH] sparse: misc NULL noise in fs/* ChangeSet@1.1784.19.1, 2004-07-12 09:07:25-07:00, viro@www.linux.org.uk [PATCH] sparse: NULL noise in fs/reiserfs ChangeSet@1.1784.10.30, 2004-07-12 02:01:59-07:00, davem@nuts.davemloft.net [SPARC64]: Update defconfig. ChangeSet@1.1784.18.1, 2004-07-12 06:36:31-07:00, jfs.adm@hostme.bitkeeper.com Merge bk://linux.bkbits.net/linux-2.5 into hostme.bitkeeper.com:/repos/j/jfs/linux-2.5 ChangeSet@1.1784.10.27, 2004-07-11 23:56:52-07:00, wesolows@foobazco.org [SPARC32]: Don't allow the kernel to read PAGE_NONE pages. ChangeSet@1.1784.10.26, 2004-07-11 23:09:44-07:00, wesolows@foobazco.org Merge foobazco.org:/sources/2.5-bk into foobazco.org:/sources/2.5-sparc-todave ChangeSet@1.1784.10.25, 2004-07-11 20:34:31-07:00, torvalds@ppc970.osdl.org x86: fix stackframe ownership confusion in sys_sigaltstack() gcc doesn't understand that "asmlinkage" routines have the argument stack owned by the assembly-language caller, and the recent sparse cleanup made gcc think it owns enough stack frame space to make a tailcall by overwriting "struct pt_regs" that is set up by the low-level system call code. Hide that problem again. The real fix would be to tell gcc that the caller owns the stack frame that it set up, but we don't have any such interfaces, so for now the best we can do is to hide it. ChangeSet@1.1784.10.23, 2004-07-11 17:49:02-07:00, gandalf@netfilter.org [NETFILTER]: Add timestamping to ipt_ULOG After Andi's timestamp optimizations we don't have any timestamps on the packets unless someone requested them. Here's a patch for 2.6 to explicitly timestamp the packets before we log them. Harald approved it some time ago, he's pretty busy so I'm sending it instead. Signed-off-by: Martin Josefsson Signed-off-by: David S. Miller ChangeSet@1.1784.10.22, 2004-07-11 17:47:10-07:00, akpm@osdl.org [SPARSE]: Fix warnings in net/sctp/ Signed-off-by: Andrew Morton Signed-off-by: David S. Miller ChangeSet@1.1784.10.21, 2004-07-11 17:41:54-07:00, bunk@fs.tum.de [IPV4]: Remove no longer available URL. This patch solves Bugzilla #2445 by removing a no longer available URL from the help text for NET_IPIP. Noted by Nils Hammar . Signed-off-by: Adrian Bunk Signed-off-by: David S. Miller ChangeSet@1.1784.16.1, 2004-07-11 17:19:27-07:00, davem@nuts.davemloft.net [SPARC64]: Add CMT register defines. ChangeSet@1.1784.1.38, 2004-07-11 18:34:22-05:00, stevef@smfhome.smfdom clean up NULL vs. 0 warnings generated by sparse tool ChangeSet@1.1784.15.1, 2004-07-12 00:16:21+01:00, rmk@flint.arm.linux.org.uk [ARM] ohci-omap does not need asm/mach-types.h ChangeSet@1.1784.13.71, 2004-07-11 14:54:01-07:00, torvalds@ppc970.osdl.org Remove obsoleted drivers/char/h8.c drivers/char/h8.h. ChangeSet@1.1784.13.70, 2004-07-11 10:32:43-07:00, torvalds@ppc970.osdl.org Linux 2.6.8-rc1 TAG: v2.6.8-rc1