ChangeSet@1.2188.1.1, 2005-03-29 15:48:28-05:00, jgarzik@pobox.com Merge pobox.com:/garz/repo/linux-2.6 into pobox.com:/garz/repo/net-drivers-2.6 ChangeSet@1.2190, 2005-03-29 15:42:20-05:00, jgarzik@pobox.com [libata sata_sil] Don't presume PCI cache-line-size reg is > 0 Some BIOSen are known to screw up the PCI cache-line-size register, so add a paranoia check. ChangeSet@1.2188, 2005-03-29 07:43:57-08:00, christophe@saout.de [PATCH] x86-64: Fix preemption off of irq context with PREEMPT_BKL Fixing the interrupt tst for CONFIG_PREEMPT on x86-64 exposes another bug with CONFIG_PREEMPT_BKL. Calling schedule due to preemption releases the BKL which it shouldn't do. Call preempt_schedule_irq instead (like for i386). This fixes the easily reproducible filesystem errors I've seen (with reiserfs, which heavily relies on the BKL). Signed-off-by: Christophe Saout Signed-off-by: Andi Kleen Signed-off-by: Linus Torvalds ChangeSet@1.2187, 2005-03-28 21:24:58-08:00, torvalds@ppc970.osdl.org Merge bk://bk.arm.linux.org.uk/linux-2.6-rmk into ppc970.osdl.org:/home/torvalds/v2.6/linux ChangeSet@1.2181.1.53, 2005-03-28 20:43:20-08:00, torvalds@evo.osdl.org Merge whitespace and __nocast changes ChangeSet@1.2181.31.245, 2005-03-28 20:24:26-08:00, sct@redhat.com [PATCH] ext3: fix journal_unmap_buffer race There is a race condition in jbd between journal_unmap_buffer() and journal_commit_transaction(). This is leading to corruption of buffers on the transaction's t_locked_list, leading to a variety of symptoms usually involving an oops in kjournald. The problem is that various special-case exit paths in journal_unmap_buffer() call journal_put_journal_head without any locking. This is racing against a refiling of the same journal_head in journal_commit_transaction(): __journal_unfile_buffer(jh); __journal_file_buffer(jh, commit_transaction, BJ_Locked); The way these functions work, this leaves the jh temporarily with b_transaction==NULL; and if journal_unmap_buffer()'s call to journal_put_journal_head() hits this window, it sees the NULL transaction and frees the journal_head which is just about to get refiled on the locked list. The main exit path on journal_unmap_buffer() performs its journal_put_journal_head() before dropping the j_list_lock, so is not vulnerable to this race. The fix is to move the other similar calls on special-case exit branches in that function so that they also release the journal_head before dropping that lock. This is low-risk since the new order has already been tested as the normal exit path from this function. The change has had extensive testing and has been shown to fix the problem with no regressions found. Signed-off-by: Peter Keilty Signed-off-by: Nicholas Dokos Signed-off-by: Stephen Tweedie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.244, 2005-03-28 20:24:10-08:00, pbadari@us.ibm.com [PATCH] ext3 writeback "nobh" option Add a `nobh' mount option to ext3 in writeback mode: avoid attaching buffer_head to data pages, like ext2. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.243, 2005-03-28 20:23:53-08:00, pbadari@us.ibm.com [PATCH] ext3 writepages support for writeback mode Add writepages support for ext3 writeback mode. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.242, 2005-03-28 20:23:36-08:00, sct@redhat.com [PATCH] ext3/jbd race: releasing in-use journal_heads Fix destruction of in-use journal_head journal_put_journal_head() can destroy a journal_head at any time as long as the jh's b_jcount is zero and b_transaction is NULL. It has no locking protection against the rest of the journaling code, as the lock it uses to protect b_jcount and bh->b_private is not used elsewhere in jbd. However, there are small windows where b_transaction is getting set temporarily to NULL during normal operations; typically this is happening in __journal_unfile_buffer(jh); __journal_file_buffer(jh, ...); call pairs, as __journal_unfile_buffer() will set b_transaction to NULL and __journal_file_buffer() re-sets it afterwards. A truncate running in parallel can lead to journal_unmap_buffer() destroying the jh if it occurs between these two calls. Fix this by adding a variant of __journal_unfile_buffer() which is only used for these temporary jh unlinks, and which leaves the b_transaction field intact so that we never leave a window open where b_transaction is NULL. Additionally, trap this error if it does occur, by checking against jh->b_jlist being non-null when we destroy a jh. Signed-off-by: Stephen Tweedie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.241, 2005-03-28 20:23:19-08:00, js@linuxtv.org [PATCH] dvb: mt352: cleanups o remove s* from state, they are only used in read_status o remove casting of void* o remove FIXME in set_parameters, should be handled by dvb-core state machine o remove some unnecessary braces o remove #if 1 in read_status, and add note from Zarlink design manual o change read_signal_strength to read total AGC_GAIN in case some adapter turns on the RF_AGC loop. (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.240, 2005-03-28 20:23:03-08:00, js@linuxtv.org [PATCH] dvb: gcc 2.95 compile fixes Patch by Olaf Titz: gcc 2.95 compile fixes Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.239, 2005-03-28 20:22:46-08:00, js@linuxtv.org [PATCH] dvb: ttusb_dec: cleanup Cleanup patch from Peter Beutner: o unregister the input device on disconnect and move cleanup stuff of the RC to own function o keymap should be static not const o set up keymap correctly and completly for input device plus a more cosmetic one: o usb endpoints are only 4bit numbers[0...15], the 8th bit only specifies the direction and is set by the snd/rcvxxxpipe() macro Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.238, 2005-03-28 20:22:30-08:00, js@linuxtv.org [PATCH] dvb: support Nova-S rev 2.2 Support for Nova-S rev 2.2 (Gregor Kroesen) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.237, 2005-03-28 20:22:13-08:00, js@linuxtv.org [PATCH] dvb: sparse warnings on one-bit bitfields Remove some sparse warnings on one-bit bitfields. Signed-off-by: Peter Hagervall Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.236, 2005-03-28 20:21:57-08:00, js@linuxtv.org [PATCH] dvb: dibusb: support dtt200u (Yakumo/Typhoon/Hama) USB2.0 device o added native support for the dtt200u (Yakumo/Typhoon/Hama) USB2.0 device o URBs are now submitted, when the actual transfer began, not right from the device plugin (solves a lot of problems) o minor fixes in the dib3000-frontends (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.235, 2005-03-28 20:21:40-08:00, js@linuxtv.org [PATCH] dvb: convert from pci_module_init to pci_register_driver From: http://kerneljanitors.org/TODO o convert from pci_module_init to pci_register_driver Signed-off-by: Christophe Lucas Signed-off-by: Domen Puncer Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.234, 2005-03-28 20:21:23-08:00, js@linuxtv.org [PATCH] dvb: vfree() checking cleanups vfree() checking cleanups. Signed-off by: James Lamanna Signed-off-by: Domen Puncer Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.233, 2005-03-28 20:21:06-08:00, js@linuxtv.org [PATCH] dvb: dibusb: HanfTek UMT-010 fixes HanfTek UMT-010: adapted the pll-programming, the usb-ids and the firmware name to the new firmware (thanks to Sunny Liu from HanfTek) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.232, 2005-03-28 20:20:50-08:00, js@linuxtv.org [PATCH] dvb: support for Technotrend PCI DVB-T patch by Anssi Hannula: add support for Technotrend PCI DVB-T (0x13c2,0x0008, Grundig 29504-401 (LSI L64781 Based) frontend) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.231, 2005-03-28 20:20:33-08:00, js@linuxtv.org [PATCH] dvb: dibusb: remove useless ifdef removed useless ifdef: dvb_register_adapter always takes 3 parameters in this tree (Andreas Oberritter) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.230, 2005-03-28 20:20:17-08:00, js@linuxtv.org [PATCH] dvb: clear up confusion between ids and adapters clear up confusion between ids and adapters (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.229, 2005-03-28 20:19:59-08:00, js@linuxtv.org [PATCH] dvb: frontends: kfree() cleanup kfree(NULL) is safe (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.228, 2005-03-28 20:19:42-08:00, js@linuxtv.org [PATCH] dvb: fix CAMs on Typhoon DVB-S Fix for CAMs on Typhoon DVB-S, where it would constantly reset itself. (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.227, 2005-03-28 20:19:26-08:00, js@linuxtv.org [PATCH] dvb: saa7146: remove duplicate setgpio Remove duplicate setgpio (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.226, 2005-03-28 20:19:10-08:00, js@linuxtv.org [PATCH] dvb: tda10021: fix continuity errors Fix Continuity Errors with tda10021 (slickhenry, Robert Schlabbach) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.225, 2005-03-28 20:18:53-08:00, js@linuxtv.org [PATCH] dvb: dibusb: pll fix o fixed pll frequency calculation for channels > 700 MHz. (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.224, 2005-03-28 20:18:36-08:00, js@linuxtv.org [PATCH] dvb: ttusb_dec: IR support Add IR support added by Peter Beutner Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.223, 2005-03-28 20:18:20-08:00, js@linuxtv.org [PATCH] dvb: OREN or51211, or51132_qam and or51132_vsb firmware download info o add OREN or51211, or51132_qam and or51132_vsb firmware o correct some links Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.222, 2005-03-28 20:18:04-08:00, js@linuxtv.org [PATCH] dvb: dibusb: support nova-t usb ir o added native nova-t support, since only the nova-t firmware works with the nova-t remote control o added keys statically (maybe we should find something to sort this out... cinergyt2 is doing the same) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.221, 2005-03-28 20:17:47-08:00, js@linuxtv.org [PATCH] dvb: support pcHDTV HD2000 o DVB support for the pcHDTV HD2000 card, submitted by Rusty Scott o remove bttv dependency from frontend (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.220, 2005-03-28 20:17:30-08:00, js@linuxtv.org [PATCH] dvb: corrected links to firmware files corrected links to firmware files (reported by Stefan Frings) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.219, 2005-03-28 20:17:14-08:00, js@linuxtv.org [PATCH] dvb: av7110: error handling during attach Janitoring - error handling during attach o av7110_arm_sync(): small helper to factor out some code; o av7110_attach() does not check the status code returned by all the functions is uses; o balance the error path in av7110_attach and have it easy to check. Please check it; o if everything is correctly balanced, device_initialized is not needed anymore in struct av7110; o av7110_detach(): no need to cast a void * pointer; o av7110_detach(): die #ifdef, die ! o change the returned value of av7110_av_exit() as it can't fail; o change the returned value of av7110_ca_init() as it can fail. Removed extraneous casts while are it; o check for failure of vmalloc() in ci_ll_init(). o vfree(NULL) is safe. Signed-off-by: Francois Romieu Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.218, 2005-03-28 20:16:57-08:00, js@linuxtv.org [PATCH] dvb: saa7146: static initialization Static initialization. Signed-off-by: Francois Romieu Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.217, 2005-03-28 20:16:41-08:00, js@linuxtv.org [PATCH] dvb: av7110: fix Oops when av7110_ir_init() failed o don't call av7110_ir_init() if driver initialization failed already due to previous errors (resulted in Oops in out-of-memory conditions) (me) o don't do av7110_ir_exit if init was not done (Kenneth Aafloy) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.216, 2005-03-28 20:16:24-08:00, js@linuxtv.org [PATCH] dvb: ttusb-budget: s/usb_unlink_urb/usb_kill_urb/ patch by Colin Western: s/usb_unlink_urb/usb_kill_urb/ Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.215, 2005-03-28 20:16:07-08:00, js@linuxtv.org [PATCH] dvb: nxt2002: fix max frequency Patch by Taylor Jacob and Tom Dombrosky: There was a typo in the BBTI/B2C2 specs that stated the upper frequency of the air2pc/nxt2002 was 806Mhz, not 860Mhz. Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.214, 2005-03-28 20:15:50-08:00, js@linuxtv.org [PATCH] dvb: refactor sw pid filter to drop redundant code o added index field to struct dvb_demux_feed for having a unique feed id, which can be used for hardware pid filter tables o dibusb: adding the index to struct dvb_demux_feed makes dibusb-pid-filtering redundant o ttusb-budget: struct channel removed in favour of dvbdmxfeed->index (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.213, 2005-03-28 20:15:33-08:00, js@linuxtv.org [PATCH] dvb: cleanups, make stuff static This patch contains the following possible cleanups: o make needlessly global code static o remove the following EXPORT_SYMBOL'ed but unused function: - bt8xx/bt878.c: bt878_find_by_i2c_adap o remove the following unused global functions: - dvb-core/dvb_demux.c: dmx_get_demuxes - dvb-core/dvb_demux.c: dvb_set_crc32 o remove the following unneeded EXPORT_SYMBOL's: - dvb-core/dvb_demux.c: dvb_dmx_swfilter_packet - dvb-core/dvb_demux.c: dvbdmx_connect_frontend - dvb-core/dvb_demux.c: dvbdmx_disconnect_frontend - dvb-core/dvbdev.c: dvb_class Signed-off-by: Adrian Bunk Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.212, 2005-03-28 20:15:16-08:00, js@linuxtv.org [PATCH] dvb: support KWorld/ADSTech Instant DVB-T USB2.0 o added support for KWorld/ADSTech Instant DVB-T USB2.0 (DiB3000M-B) o added deactivation option of the pid parser for the DiB3000M-B (since there are USB2.0 devices and which now have the ability to deliver the complete Transport Stream) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.211, 2005-03-28 20:14:58-08:00, js@linuxtv.org [PATCH] dvb: skystar2: fix MAC address reading fixed MAC address reading (eeprom address to read, was not correctly set, respectively overwritten) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.210, 2005-03-28 20:14:42-08:00, js@linuxtv.org [PATCH] dvb: l64781: email address fix fix marko kohtala's mail address Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.209, 2005-03-28 20:14:26-08:00, js@linuxtv.org [PATCH] dvb: ttusb_dec: use alternative interface to save bandwidth Use alternative interface. Asks for less bandwidth and therefore works with OHCI as well as UHCI (Alex Woods) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.208, 2005-03-28 20:14:09-08:00, js@linuxtv.org [PATCH] dvb: dibusb: increased the number of urbs for usb1.1 devices increased the number of urbs for usb1.1 devices (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.207, 2005-03-28 20:13:53-08:00, js@linuxtv.org [PATCH] dvb: dibusb: debug changes o use own err,info,warn defines, driver description o remove warning about firmware bug (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.206, 2005-03-28 20:13:37-08:00, js@linuxtv.org [PATCH] dvb: dib3000: corrected device naming corrected device naming (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.205, 2005-03-28 20:13:20-08:00, js@linuxtv.org [PATCH] dvb: get_dvb_firmware: new unshield version patch by Mattias Holmlund: support new version of unshield for sp887x firmware extraction (changed cmdline parameters) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.204, 2005-03-28 20:13:04-08:00, js@linuxtv.org [PATCH] dvb: nxt2002: QAM64/256 support patch by Taylor Jacob: Add QAM64/256 Support Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.203, 2005-03-28 20:12:46-08:00, js@linuxtv.org [PATCH] dvb: dibusb: support Hauppauge WinTV NOVA-T USB2 o added support for Hauppauge WinTV NOVA-T USB2 (clone of MOD3000P by DiBcom) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.202, 2005-03-28 20:12:29-08:00, js@linuxtv.org [PATCH] dvb: dibusb readme update dibusb readme update (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.201, 2005-03-28 20:12:13-08:00, js@linuxtv.org [PATCH] dvb: ves1x93: invert_pwm fix fix unhandled invert_pwm option (needed on dbox2 hardware) submitted by Carsten Juttner Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.200, 2005-03-28 20:11:56-08:00, js@linuxtv.org [PATCH] dvb: skystar2: update email address Updated email address. Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.199, 2005-03-28 20:11:40-08:00, js@linuxtv.org [PATCH] dvb: support Activy Budget card support Activy Budget with ALPS BSRU6 tuner submitted by Andreas 'randy' Weinberger. Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.198, 2005-03-28 20:11:24-08:00, js@linuxtv.org [PATCH] dvb: mt352: Pinnacle 300i comments Comment preliminary Pinnacle 300i changes to the mt352 driver. Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.197, 2005-03-28 20:11:08-08:00, js@linuxtv.org [PATCH] dvb: skystar2: remove duplicate pci_release_region() remove duplicated pci_release_region() etc. Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.196, 2005-03-28 20:10:51-08:00, js@linuxtv.org [PATCH] dvb: dibusb: misc. fixes o worked around hw_sleep handling for usb1.1 devices o fixed oops when no frontend was attached (because of usb1.1 timeouts in my debugging sessions) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.195, 2005-03-28 20:10:35-08:00, js@linuxtv.org [PATCH] dvb: dibcom: frontend fixes o corrected the name in driver_desc o removed debug messages and some comments (see dib3000-watch) (Patrick Boettcher) Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.194, 2005-03-28 20:10:18-08:00, js@linuxtv.org [PATCH] dvb: clarify firmware upload messages clarify firmware upload messages Signed-off-by: Johannes Stezenbach Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.193, 2005-03-28 20:10:02-08:00, zippel@linux-m68k.org [PATCH] hfs: unicode decompose support HFS+ specificies that a number of unicode characters must be stored in its decomposed form on disk. This adds the support for the composition and decomposition of such HFS+ file names. There is also an option to turn it off again, in case one managed to create invalid names, which otherwise become inaccessible. Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.192, 2005-03-28 20:09:45-08:00, zippel@linux-m68k.org [PATCH] hfs: add nls support Add full nls support for HFS+. The default is still utf8, but that can be changed now via a mount option. Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.191, 2005-03-28 20:09:28-08:00, zippel@linux-m68k.org [PATCH] hfs: use parse library for mount options Make use of parser library to parse mount options. Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.190, 2005-03-28 20:09:12-08:00, zippel@linux-m68k.org [PATCH] hfs: fix sign problem in hfs_ext_keycmp The key values are unsigned, so comparing them using the difference doesn't always work. (Problem reported by k_guillaume@libertysurf.fr) Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.189, 2005-03-28 20:08:56-08:00, zippel@linux-m68k.org [PATCH] hfs: more bnode error checks Check for errors during reading of bnode pages and report them. Also improve error checks in case bnode validity checks failed. Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.188, 2005-03-28 20:08:39-08:00, zippel@linux-m68k.org [PATCH] hfs: fix umask behaviour This makes umask behaviour more consistent, so it's now also used for new files and the mount options behave like other umask users. (Problem reported by ) Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.187, 2005-03-28 20:08:23-08:00, zippel@linux-m68k.org [PATCH] hfs: free page buffers in releasepage Call try_to_free_buffers() when a page can be released. This behaviour changed during 2.5 and wasn't fixed in hfs while porting it to 2.6. Also remove an unnecessary PageActive() check, only the node ref count is really relevant. Signed-off-by: Roman Zippel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.186, 2005-03-28 20:08:06-08:00, patrick@bitwizard.nl [PATCH] Specialix/IO8 cli() conversion This patch converts all save_flags/restore_flags to the new spin_lock_irqsave/spin_unlock_irqrestore calls, as well as some other 2.6.X cleanups. This allows the "io8+" driver to become SMP safe. The large size of this patch comes mostly from the added debug features. Signed-off-by: Patrick vd Lageweg Signed-off-by: Rogier Wolff Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.185, 2005-03-28 20:07:50-08:00, stsp@aknet.ru [PATCH] au1x00_uart deadlock fix This driver also needs to drop the lock when calling back into the tty layer. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.184, 2005-03-28 20:07:34-08:00, bunk@stusta.de [PATCH] fs/attr.c: fix check after use This patch fixes a check after use found by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.183, 2005-03-28 20:07:17-08:00, bunk@stusta.de [PATCH] drivers/telephony/ixj: fix a use after free This patch fixes a use after free found by the Coverity checker. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.182, 2005-03-28 20:07:01-08:00, bunk@stusta.de [PATCH] drivers/block/DAC960.c: fix a use after free This patch fixes a use after free found by the Coverity checker. Controller is used in the Failure path. In the Failure patch, Controller will be freed in the end, so this kfree can simply be deleted. Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.181, 2005-03-28 20:06:44-08:00, gud@eth.net [PATCH] unified spinlock initialization - remove the usage of {SPIN,RW}_LOCK_UNLOCKED as far as possible - add a note to Documentation/spinlocks.txt about the deprecation of the macros {SPIN,RW}_LOCK_UNLOCKED Signed-off-by: Amit Gud Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.180, 2005-03-28 20:06:27-08:00, rbultje@ronald.bitfreak.net [PATCH] bt819 array indexing fix Signed-off-by: Ronald S. Bultje Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.179, 2005-03-28 20:06:09-08:00, bjorn.helgaas@hp.com [PATCH] Netmos parallel/serial/combo support There's a bugzilla entry for this here: http://bugzilla.kernel.org/show_bug.cgi?id=4334 This should fix all the problems I know about with Netmos combo cards: - 9735, 9835, and 9855 are not supported - combo cards with parallel are erroneously claimed by serial driver - serial and parport_serial blindly probe for ports parport_pc: Sort Netmos device IDs, no functional change. parport_serial: Previously supported 9735 and 9835. Add 9745, 9845, 9855, and add init hooks to discover how many serial/parallel ports are actually present (the boards are available in various configs). Add protection for overflow of static tables. quirks: Detect Netmos combo (parallel + serial) cards and change class from SERIAL to OTHER to prevent serial driver from claiming them. 8250: Add init hook to discover the number of serial ports present. This prevents us from poking at unused BARs. pci_ids: Add Netmos 9745, 9845, and sort. Signed-off-by: Bjorn Helgaas Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.178, 2005-03-28 20:05:53-08:00, wendyx@us.ibm.com [PATCH] serial: Digi Neo driver This device driver is for the Digi Neo serial adapter. We got several rounds of detail comments from linux community and updated our earlier patches according to comments including Jeff Garzik and Greg KH's. Signed-off-by: Wen Xiong Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.177, 2005-03-28 20:05:36-08:00, patrick@bitwizard.nl [PATCH] generic-serial cli() conversion This patch converts all save_flags/restore_flags to the new spin_lock_irqsave/spin_unlock_irqrestore calls, as well as some other 2.6.X cleanups. This prepares the way for the "io8+", "sx" and "rio" drivers to become SMP safe. Patches for those drivers follow. Signed-off-by: Patrick vd Lageweg Signed-off-by: Rogier Wolff Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.176, 2005-03-28 20:05:21-08:00, rohit.seth@intel.com [PATCH] arch hook for notifying changes in PTE protections bits Recently on IA-64, we have found an issue where old data could be used by apps. The sequence of operations includes few mprotects from user space (glibc) goes like this: 1- The text region of an executable is mmaped using PROT_READ|PROT_EXEC. As a result, a shared page is allocated to user. 2- User then requests the text region to be mprotected with PROT_READ|PROT_WRITE. Kernel removes the execute permission and leave the read permission on the text region. 3- Subsequent write operation by user results in page fault and eventually resulting in COW break. User gets a new private copy of the page. At this point kernel marks the new page for defered flush. 4- User then request the text region to be mprotected back with PROT_READ|PROT_EXEC. mprotect suppport code in kernel, flushes the caches, updates the PTEs and then flushes the TLBs. Though after updating the PTEs with new permissions, we don't let the arch specific code know about the new mappings (through update_mmu_cache like routine). IA-64 typically uses update_mmu_cache to check for the defered flush flag (that got set in step 3) to maintain cache coherency lazily (The local I and D caches on IA-64 are incoherent). DavidM suggeested that we would need to add a hook in the function change_pte_range in mm/mprotect.c This would let the architecture specific code to look at the new ptes to decide if it needs to update any other architectual/kernel state based on the updated (new permissions) PTE values. We have added a new hook lazy_mmu_prot_update(pte_t) that gets called protection bits in PTEs change. This hook provides an opportunity to arch specific code to do needful. On IA-64 this will be used for lazily making the I and D caches coherent. Signed-off-by: David Mosberger Signed-off-by: Rohit Seth Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.175, 2005-03-28 20:05:04-08:00, relf@os2.ru [PATCH] fs/hpfs/*: fix HPFS support under 64-bit kernel The provided patch fixes HPFS filesystem support under 64-bit Linux kernel and closes the bugreport http://bugme.osdl.org/show_bug.cgi?id=4333 The problem is in 'time_t' size which is 8 bytes on 64-bit systems (comparing to 4 bytes on 32-bit systems). The patch introduces local 'time32_t' type of the fixed size 4 and uses it where required. Cc: Mikulas Patocka Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.174, 2005-03-28 20:04:48-08:00, damm@opensource.se [PATCH] module parameter fixes Crystal clear MODULE_PARM_DESC typo fixes for: bt878, edgeport, g_ether, budget, cifs, drm, eepro100 Signed-off-by: Magnus Damm Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.173, 2005-03-28 20:04:30-08:00, neilb@cse.unsw.edu.au [PATCH] nlm: fix f_count leak I can't see any reason for this file->f_count++. Removing it fixes a bug which leaves an exported filesystem busy if a callback for a lock held on that filesystem ever failed. Found by Terence Rokop. Signed-off-by: J. Bruce Fields Signed-off-by: Neil Brown Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.172, 2005-03-28 20:04:14-08:00, mikukkon@gmail.com [PATCH] Fix compile warning in drivers/pnp/resource.c with !CONFIG_PCI drivers/pnp/resource.c:24: warning: `pnp_skip_pci_scan' defined but not used Signed-off-by: Mika Kukkonen (mikukkon@gmail.com) Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.171, 2005-03-28 20:03:58-08:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: Fix msdos ->[ac]{date,time} MSDOS doesn't have ->adate and ->c{date,time}, those should be filled by zero. This fixes my recent changes. Signed-off-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.170, 2005-03-28 20:03:42-08:00, hirofumi@mail.parknet.co.jp [PATCH] FAT: set MS_NOATIME to msdos MSDOS doesn't have atime, so this sets MS_NOATIME to msdos in order that we don't get unnecessary writes. Signed-off-by: Werner Almesberger Signed-off-by: OGAWA Hirofumi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.169, 2005-03-28 20:03:25-08:00, rth@twiddle.net [PATCH] alpha: elimitate two warnings from gcc4 Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.168, 2005-03-28 20:03:09-08:00, rth@twiddle.net [PATCH] small warning fix for gcc4 Eliminates "warning: type qualifiers ignored on function return type". Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.167, 2005-03-28 20:02:53-08:00, rmk+pcmcia@arm.linux.org.uk [PATCH] pcmcia: clean up suspend Where suspend is implemented, all socket drivers set their socket state to "dead_socket" as the first thing in their suspend ops method. Factor this out to the core PCMCIA code. This allows us to kill some suspend methods, and reduce the references to "dead_socket". Note that the suspend ops method is now optional. Signed-off-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.166, 2005-03-28 20:02:36-08:00, rmk@arm.linux.org.uk [PATCH] Fix PCMCIA resume with card inserted The following patch fixes a minor but annoying issue with PCMCIA resume. When a machine is suspended with an empty socket, and then resumed with a card in the socket, the card is ignored. The following patch adjusts the resume paths such that we detect the card and properly initialise it. Signed-off-by: Russell King Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.165, 2005-03-28 20:02:19-08:00, jgarzik@pobox.com [PATCH] alpha build fixes Needed this to build Fedora rawhide kernel (2.6.12-rc1 + some patches) on alpha. This is the upstream portion of the build fixes. Signed-off-by: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.164, 2005-03-28 20:02:03-08:00, rddunlap@osdl.org [PATCH] io_remap_pfn_range: convert last callers io_remap_pfn_range() remaining callers: convert all remaining callers of io_remap_page_range() to io_remap_pfn_range(); add io_remap_page_range() to feature-removal-schedule.txt; Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.163, 2005-03-28 20:01:45-08:00, rddunlap@osdl.org [PATCH] io_remap_pfn_range: fix some callers for XEN (from Keir:) I have audited the drivers/ and sound/ directories. Most uses of remap_pfn_range are okay, but there are a small handful that are remapping device memory (mostly AGP and DRM drivers). Of particular driver is the HPET driver, whose mmap function is broken even for native (non-Xen) builds. If nothing else, vmalloc_to_phys should be used instead of __pa to convert an ioremapped virtual address to a valid physical address. The fix in this patch is to remember the original bus address as probed at boot time and to pass this to io_remap_pfn_range. Signed-off-by: Keir Fraser Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.162, 2005-03-28 20:01:29-08:00, rddunlap@osdl.org [PATCH] io_remap_pfn_range: convert sparc callers io_remap_pfn_range(): convert sparc32/64 callers of io_remap_page_range(with 6 args) to io_remap_pfn_range(with 5 args); Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.161, 2005-03-28 20:01:12-08:00, rddunlap@osdl.org [PATCH] io_remap_pfn_range: add for all arch-es This patch introduces a new interface function for mapping bus/device memory: io_remap_pfn_range. This accepts the same parameters as remap_pfn_range and io_remap_page_range but should be used in any situation where the caller is not simply remapping ordinary RAM. For example, when mapping device registers the new function should be used. The distinction between remapping device memory and ordinary RAM is critical for the Xen hypervisor. This patch series also cleans up the remaining users of io_remap_page_range (in particular, the several sparc-specific sections in various drivers that use a special form of io_remap_page_range: an extra argument for SPARC arch.) by converting them to use io_remap_pfn_range(), where io_remap_pfn_range() supports passing as part of the pfn argument. The sparc32 & sparc64 code needs live testing. (from Keir:) I have audited the drivers/ and sound/ directories. Most uses of remap_pfn_range are okay, but there are a small handful that are remapping device memory (mostly AGP and DRM drivers). Of particular driver is the HPET driver, whose mmap function is broken even for native (non-Xen) builds. If nothing else, vmalloc_to_phys should be used instead of __pa to convert an ioremapped virtual address to a valid physical address. The fix in this patch is to remember the original bus address as probed at boot time and to pass this to io_remap_pfn_range. io_remap_pfn_range(): add io_remap_pfn_range() for all arches; add MK_IOSPACE_PFN(), GET_IOSPACE(), and GET_PFN() for all arches but primarily for sparc32/64's extended IO space, sparc: kill the hack of using low bit of to mean write_combine or set side-effect (_PAGE_E) bit; (DaveM suggested that I kill it;) future: convert remaining callers of io_remap_page_range() to io_remap_pfn_range() and deprecate io_remap_page_range(); Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.160, 2005-03-28 20:00:54-08:00, jakub@redhat.com [PATCH] Futex: make futex_wait() atomic again Call get_futex_value_locked in futex_wait with futex hash bucket locked and only enqueue the futex if futex has the expected value. Simplify futex_requeue. Signed-off-by: Jakub Jelinek Acked-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.159, 2005-03-28 20:00:38-08:00, sct@redhat.com [PATCH] ext2/3 file limits to avoid overflowing i_blocks As discussed before, we can overflow i_blocks in ext2/ext3 inodes by growing a file up to 2TB. That gives us 2^32 sectors of data in the file; but once you add on the indirect tree and possible EA/ACL metadata, i_blocks will wrap beyond 2^32. Consensus seemed to be that the best way to avoid this was simply to stop files getting so large that this was a problem in the first place; anything else would lead to complications if a sparse file tried to overflow that 2^32 sector limit while filling in holes. I wrote a small program to calculate the total indirect tree overhead for any given file size, and 0x1ff7fffe000 turned out to be the largest file we can get without the total i_blocks overflowing 2^32. But in testing, that *just* wrapped --- we need to limit the file to be one page smaller than that to deal with the possibility of an EA/ACL block being accounted against i_blocks. So this patch has been tested, at least on ext3, by letting a file grow densely to its maximum size permitted by the kernel; at 0x1ff7fffe000, stat shows the file to have wrapped back exactly to 0 st_blocks, but with the limit at 0x1ff7fffd000, du shows it occupying the expected 2TB-blocksize bytes. Signed-off-by: Stephen Tweedie Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.158, 2005-03-28 20:00:22-08:00, schwidefsky@de.ibm.com [PATCH] posix-cpu-timers and cputime_t divisons. The posix cpu timers introduced code that will not work with an arbitrary type for cputime_t. In particular the division of two cputime_t values broke the s390 build because cputime_t is define as an unsigned long long. The first problem is the division of a cputime_t value by a number of threads. That is a cputime_t divided by an integer. The patch adds another macro cputime_div to the cputime macro regime which implements this type of division and replaces all occurences of a cputime / nthread in the posix cpu timer code. Next problem is bump_cpu_timer. This function is severly broken: 1) In the body of the first if statement a timer->it.cpu.incr.sched is used as the second argument of do_div. do_div expects an unsigned long as "base" parameter but timer->it.cpu.incr.sched is an unsigned long long. If the timer increment ever happens to be >= 2^32 the result is wrong and if the lower 32 bits are zero this even crashes with a fixed point divide exception. 2) The cputime_le(now.cpu, timer->it.cpu.expires.cpu) in the else if condition is wrong. The cputime_le() reads as "now.cpu <= timer->it.cpu.expires.cpu" and the subsequent cputime_ge() reads as "now.cpu >= timer.it.cpu.expires.cpu". That means that the two values needs to be equal to make the body of the second if to have any effect. The first cputime_le should be a cputime_ge. 3) timer->it.cpu.expires.cpu and delta in the else part of the if are of type cputime_t. A division of two cputime_t values is undefined (think of cputime_t as e.g. a struct timespec, that just doesn't work). We could add a primitive for this type of division but we'd end up with a 64 bit division or something even more complicated. The solution for bump_cpu_timer is to use the "slow" division algorithm that does shifts and subtracts. That adds yet another cputime macro, cputime_halve to do the right shift of a cputime value. The next problem is in arm_timer. The UPDATE_CLOCK macro does the wrong thing for it_prof_expires and it_virt_expires. Expanded the macro and added the cputime magic to it_prof/it_virt. The remaining problems are rather simple, timespec_to_jiffies instead of timespec_to_cputime and several cases where cputime_eq with cputime_zero needs to be used instead of "== 0". What still worries me a bit is to use "timer->it.cpu.incr.sched == 0" as check if the timer is armed at all. It should work but its not really clean. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.157, 2005-03-28 20:00:05-08:00, shaohua.li@intel.com [PATCH] Fix oops when inserting ipmi_si module In one of machines in our lab, spmi->addr.register_bit_width is 0 (so the returned address is invalid). Ignoring the check will cause inserting the module oops. Signed-off-by: Li Shaohua Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.156, 2005-03-28 19:59:49-08:00, george@mvista.com [PATCH] Fix POSIX timers expiring before their scheduled time This patch fixes the problem of POSIX timers returning too early due to not accounting for the time starting mid jiffie. Signed-off-by: George Anzinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.155, 2005-03-28 19:59:33-08:00, rddunlap@osdl.org [PATCH] cciss: range chcking fix Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.154, 2005-03-28 19:59:17-08:00, rddunlap@osdl.org [PATCH] mtrr: uaccess range checking fix mtrr: prevent copy_from_user(to, from, -1) or (if that should succeed somehow) write to line[-1] (on stack); Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.153, 2005-03-28 19:59:00-08:00, pj@sgi.com [PATCH] cpusets: alloc GFP_WAIT sleep fix The cpuset mems_allowed update code in alloc_pages_current could (in theory) put a task to sleep that didn't allow sleeping (did not have __GFP_WAIT flag set). In the rare circumstance that the current tasks mems_generation is outofdate compared to the tasks cpuset mems_generation, this mems_allowed update code needs to grap cpuset_sem, which can sleep. We avoid this by not trying to update mems_allowed here if we can't sleep (__GFP_WAIT not set). Thanks to Ray Bryant for noticing this. Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.152, 2005-03-28 19:58:44-08:00, pj@sgi.com [PATCH] cpusets: mems generation deadlock fix The cpuset code to update mems_generation could (in theory) deadlock on cpuset_sem if it needed to allocate some memory while creating (mkdir) or removing (rmdir) a cpuset, so already held cpuset_sem. Some other process would have to mess with this tasks cpuset memory placement at the same time. We avoid this possible deadlock by always updating mems_generation after we grab cpuset_sem on such operations, before we risk any operations that might require memory allocation. Thanks to Jack Steiner for noticing this. Signed-off-by: Paul Jackson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.151, 2005-03-28 19:58:26-08:00, randolph@tausq.org [PATCH] Missing set_fs() calls around kernel syscall Found by sparse... since we are passing kernel param to a syscall handler, we need to do the set_fs() wrappers. Signed-off-by: Randolph Chung Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.150, 2005-03-28 19:58:10-08:00, prasanna@in.ibm.com [PATCH] kprobes: incorrect spin_unlock_irqrestore() call in register_kprobe() register_kprobe() routine was calling spin_unlock_irqrestore() wrongly. This patch removes unwanted spin_unlock_irqrestore() call in register_kprobe() routine. Signed-off-by: Prasanna S Panchamukhi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.149, 2005-03-28 19:57:54-08:00, pmeda@akamai.com [PATCH] pipe: save one pipe page Save one page in pipe writev without incuring additional cost (just that ampersand operator). Signed-off-by: Prasanna Meda Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.148, 2005-03-28 19:57:38-08:00, matthew@wil.cx [PATCH] New console flag: CON_BOOT CON_BOOT is like early printk in that it allows for output really early on. It's better than early printk because it unregisters automatically when a real console is initialised. So if you don't get consoles registering in console_init, there isn't a huge delay between the boot console unregistering and the real console starting. This is the case on PA-RISC where we have serial ports that aren't discovered until the PCI bus has been walked. I think all the current early printk users could be converted to this scheme with a minimal amount of effort. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.147, 2005-03-28 19:57:22-08:00, roland@topspin.com [PATCH] InfiniBand: remove unsafe use of in_atomic() Using in_atomic() to decide between GFP_KERNEL and GFP_ATOMIC is not safe (it doesn't work if CONFIG_PREEMPT=n). Change to just always allocating with GFP_ATOMIC, since we don't know if we can sleep or not. Signed-off-by: Roland Dreier Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.146, 2005-03-28 19:57:05-08:00, mikpe@user.it.uu.se [PATCH] drivers/char/isicom.c gcc4 fix Fix two array-of-incomplete-type errors from gcc4 in isicom.c. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.145, 2005-03-28 19:56:49-08:00, bunk@stusta.de [PATCH] kill drivers/cdrom/mcd.c As described in my patch that marked this obsolete driver as BROKEN, this patch completely removes it. Signed-off-by: Adrian Bunk Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.144, 2005-03-28 19:56:31-08:00, christoph@lameter.com [PATCH] Per cpu irq stat The definition of the irq_stat as an array means that the individual elements of the irq_stat array are located on one NUMA node requiring internode traffic to access irq_stat from other nodes. This patch makes irq_stat a per_cpu variable which allows most accesses to be local. Signed-off-by: Christoph Lameter Signed-off-by: Shai Fultheim Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.143, 2005-03-28 19:56:15-08:00, clameter@sgi.com [PATCH] Exports to enable clock driver modules The following exports are necessary to allow loadable modules to define new clocks. Without these the mmtimer driver cannot be build correctly as a module (there is another mmtimer specific fix necessary to get it to build properly but that will be a separate patch): Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.142, 2005-03-28 19:55:59-08:00, hong.liu@intel.com [PATCH] fix mmap() return value to conform to POSIX POSIX said: mmap() should return [EOVERFLOW] if the file is a regular file and the value of off + len exceeds the offset maximum established in the open file description associated with fildes. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.141, 2005-03-28 19:55:43-08:00, gordon.jin@intel.com [PATCH] fix mmap() return value to conform POSIX This patch fixes 2 return values in mmap() to conform POSIX spec: [EINVAL] The value of len is zero. [ENOMEM] MAP_FIXED was specified, and the range [addr,addr+len) exceeds that allowed for the address space of a process; or, if MAP_FIXED was not specified and there is insufficient room in the address space to effect the mapping. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.140, 2005-03-28 19:55:27-08:00, ashok.raj@intel.com [PATCH] Fix irq_affinity write from /proc for ia64 Made GENERIC_HARDIRQ mechanism work for ia64 and CPU hotplug. When write to /proc/irq is handled it is not appropriate to perform set_rte immediatly, since there is a race when the interrupt is asserted while the re-program is happening. Hence such programming is only safe when we do the re-program at the time of servicing an interrupt. This got broken when GENERIC_HARDIRQ got introduced for ia64. - added CONFIG_PENDING_IRQ so default /proc/irq write handler can do the right thing. TBD: We currently dont handle redirectable hint either in the display, or when we handle writes to /proc/irq/XX/smp_affinity. We need an arch specific way to account for the presence of "r" hint when we handle the proc write. Signed-off-by: Ashok Raj Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.139, 2005-03-28 19:55:10-08:00, joern@wohnheim.fh-wedel.de [PATCH] checkstack: fix sort misbehavior for long function names Fix sort behavior when long names are encountered. The previour regular expression depended on a tab to find the size in a string. For long names, this tab no longer exists, so it is smarter to check for a colon instead. For the kernel, this change shouldn't make a difference. But people started using the same script for c++ code in other projects. Signed-off-by: Jörn Engel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.138, 2005-03-28 19:54:54-08:00, gordon.jin@intel.com [PATCH] fix mprotect() with len=(size_t)(-1) to return -ENOMEM This patch fixes a corner case in sys_mprotect(): Case: len is so large that will overflow to 0 after page alignment. E.g. len=(size_t)(-1), i.e. 0xff...ff. Expected result: POSIX spec says it should return -ENOMEM. Current result: len is aligned to 0, then treated the same as len=0 and return success. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.137, 2005-03-28 19:54:38-08:00, janitor@sternwelten.at [PATCH] sedlbauer: eliminate bad section references Fix sedlbauer section references: convert __initdata to __devinitdata. Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 0000235f R_386_32 .init.data Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 0000236e R_386_32 .init.data Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 0000238d R_386_32 .init.data Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 000023b2 R_386_32 .init.data Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 00002417 R_386_32 .init.data Error: ./drivers/isdn/hisax/sedlbauer.o .text refers to 0000244c R_386_32 .init.data Signed-off-by: maximilian attems Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.136, 2005-03-28 19:54:21-08:00, janitor@sternwelten.at [PATCH] hfc_sx: eliminate bad section references Fix hfc_sx section references: convert __initdata to __devinitdata. Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 0000204d R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 0000205c R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 00002082 R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 0000209f R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 00002114 R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 0000211c R_386_32 .init.data Error: ./drivers/isdn/hisax/hfc_sx.o .text refers to 0000212e R_386_32 .init.data Signed-off-by: maximilian attems Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.135, 2005-03-28 19:54:05-08:00, janitor@sternwelten.at [PATCH] elsa eliminate bad section references Fix elsa section references: convert __initdata to __devinitdata. Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003d28 R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003d37 R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003d56 R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003d77 R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003ddb R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003e0e R_386_32 .init.data Error: ./drivers/isdn/hisax/elsa.o .text refers to 00003e20 R_386_32 .init.data Signed-off-by: maximilian attems Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.134, 2005-03-28 19:53:49-08:00, janitor@sternwelten.at [PATCH] teles3: eliminate bad section references Fix teles3 section references: convert __initdata to __devinitdata. Error: ./drivers/isdn/hisax/teles3.o .text refers to 000011ab R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 000011ba R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 000011e0 R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 000011fd R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 0000128c R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 00001294 R_386_32 .init.data Error: ./drivers/isdn/hisax/teles3.o .text refers to 000012a6 R_386_32 .init.data Signed-off-by: maximilian attems Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.133, 2005-03-28 19:53:31-08:00, janitor@sternwelten.at [PATCH] w6692: eliminate bad section references Fix w6692 section references: added __init to W6692Version(). Error: ./drivers/isdn/hisax/w6692.o .text refers to 0000002f R_386_32 .init.data Signed-off-by: maximilian attems Acked-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.132, 2005-03-28 19:53:15-08:00, solar@openwall.com [PATCH] Enable gcc warnings for vsprintf/vsnprintf with "format" attribute Extend the gcc printk format-string checking. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.131, 2005-03-28 19:52:59-08:00, akpm@osdl.org [PATCH] revert recent gconfig changes Revert a 2.6.11 patch "make gconfig work with gtk-2.4". It causes the cute little pixmap buttons to not appear any more. Hopefully this will motivate someone to have another attempt at fixing gconf for gtk-2.4. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.130, 2005-03-28 19:52:42-08:00, domen@coderock.org [PATCH] cdrom/cdu31a: use wait_event Use wait_event instead of sleep_on. Also, remove two unused variables. Signed-off-by: Domen Puncer Acked-by: Ondrej Zary Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.129, 2005-03-28 19:52:26-08:00, domen@coderock.org [PATCH] cdrom/cdu31a: locking fixes Use semaphores instead of sleep_on*. Stolen from patch: http://lkml.org/lkml/2004/12/18/107 from Ondrej Zary Signed-off-by: Domen Puncer Acked-by: Ondrej Zary Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.128, 2005-03-28 19:52:09-08:00, domen@coderock.org [PATCH] cdrom/cdu31a: cleanups Pretty trivial cleanups: - reordered #includes - improved some printk's (note: this actually enabled some debug printk's) - removed ()'s from returns - removed SONY_POLL_EACH_BYTE, as grep doesn't find it anywhere else - removed panic() as it can't happen. Signed-off-by: Domen Puncer Acked-by: Ondrej Zary Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.127, 2005-03-28 19:51:53-08:00, mingo@elte.hu [PATCH] break_lock fix lock->break_lock is set when a lock is contended, but cleared only in cond_resched_lock. Users of need_lockbreak (journal_commit_transaction, copy_pte_range, unmap_vmas) don't necessarily use cond_resched_lock on it. So, if the lock has been contended at some time in the past, break_lock remains set thereafter, and the fastpath keeps dropping lock unnecessarily. Hanging the system if you make a change like I did, forever restarting a loop before making any progress. And even users of cond_resched_lock may well suffer an initial unnecessary lockbreak. There seems to be no point at which break_lock can be cleared when unlocking, any point being either too early or too late; but that's okay, it's only of interest while the lock is held. So clear it whenever the lock is acquired - and any waiting contenders will quickly set it again. Additional locking overhead? well, this is only when CONFIG_PREEMPT is on. Since cond_resched_lock's spin_lock clears break_lock, no need to clear it itself; and use need_lockbreak there too, preferring optimizer to #ifdefs. Signed-off-by: Hugh Dickins Signed-off-by: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.126, 2005-03-28 19:51:36-08:00, petero2@telia.com [PATCH] DVD-RAM support for pktcdvd This patch makes it possible to use the packet writing driver with DVD-RAM discs. The pktcdvd driver is not needed for writing to DVD-RAM discs but it can improve write performance. Polgár István reports: I wrote 178716Kb data to DVD-RAM without pktcdvd driver within 4.54 minutes. With pktcdvd driver it took me 2.33 minutes. Signed-off-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.125, 2005-03-28 19:51:19-08:00, petero2@telia.com [PATCH] Use __init and __exit in pktcdvd This patch adds __init and __exit annotations to the pktcdvd driver. Signed-off-by: Peter Osterlund Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.124, 2005-03-28 19:51:02-08:00, dsw@gelato.unsw.edu.au [PATCH] Stallion driver module clean up These two patches continue the work that Wayne Meissner started and are against the current bk tree. These patches allow the stallion driver to be built-in and loaded at boot time, the current #ifdef MODULE only allows the init code to be included if compiled as a module. Tested for compile, boot and running on our console server as module and built-in. Signed-off-by Darren Williams Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.123, 2005-03-28 19:50:45-08:00, miklos@szeredi.hu [PATCH] Can't unmount bad inode This patch fixes a problem when a inode which is the root of a mount becomes bad (make_bad_inode()). In this case follow_link will return -EIO, so the name resolution fails, and umount won't work. The solution is just to remove the follow_link method from bad_inode_ops. Any filesystem operation (other than unmount) will still fail, since every other method returns -EIO. A test case for this is: 1) export an smbfs on host A and mount the share on host B 2) create directory X on A under the exported directory 3) bind mount X to Y on B (Y need not be under the share) 4) remove directory X, and create regular file X (same name) on A 5) stat X on B, this will make X a bad inode (file type changed) 6) umount Y Without the patch applied, umount won't succeed, and a reboot is necessary to get rid of the mount. With the patch applied, umount will succeed. The same is true for any filesystem which uses make_bad_inode() to mark an existing inode bad (NFS, SMBFS, FUSE, etc...). Signed-off-by: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.122, 2005-03-28 19:50:29-08:00, richtera@us.ibm.com [PATCH] s390: claw network device driver Add support for claw network devices. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.121, 2005-03-28 19:50:10-08:00, pavlic@de.ibm.com [PATCH] s390: qeth tcp segmentation offload Add support for TCP Segmentation Offload to the qeth network driver. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.120, 2005-03-28 19:49:52-08:00, thoss@de.ibm.com [PATCH] s390: qeth blkt tuning Add support for qeth BLKT tuning, the OSA inbound blocking or packing algorithm. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.119, 2005-03-28 19:49:36-08:00, ptiedem@de.ibm.com [PATCH] s390: qeth 1920 device suppor cio/qeth changes: - Add new api to common i/o layer for qeth 1920 device support. - Add 1920 device support to qeth. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.118, 2005-03-28 19:49:20-08:00, pavlic@de.ibm.com [PATCH] s390: qeth layer2 fixes qeth network driver changes: - Clear qeth header struct in qeth_fill_header. - Drop broadcast packets in qeth_send_packet if the card can't do broadcasts. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.117, 2005-03-28 19:49:03-08:00, wein@de.ibm.com [PATCH] s390: dasd preferred path support Add code to the dasd driver to select the I/O path based on the path preferences of the device. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.116, 2005-03-28 19:48:46-08:00, bstroesser@fijitsu-siemens.com [PATCH] s390: signal stack bug If a signal handler is set to use the signal stack (SA_ONSTACK), but the signal stack is disabled, the signal frame should be written to the current stack without stack switching. The reason for the bug is get_sigframe() using on_sig_stack() instead of sas_ss_flags(), which would be ok. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.115, 2005-03-28 19:48:30-08:00, schwidefsky@de.ibm.com [PATCH] s390: kernel faults Correct check for user space faults. If the failing address space is in the secondary address space and uaccess has been switched to KERNEL_DS with set_fs, check_user_space() erroneously returns 1. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.114, 2005-03-28 19:48:13-08:00, vda@port.imtp.ilyichevsk.odessa.ua [PATCH] s390: swapped memset arguments. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.113, 2005-03-28 19:47:57-08:00, blaisorblade@yahoo.it [PATCH] uml: fix "cond. expr. as lvalues" warning Gcc 3.4.3 (and probably any 3.4) emits some "deprecation" warnings currently about usages of CHOOSE_MODE, since the below syntax has been deprecated: (a ? foo: bar) = foobar; which often results from expansion of: CHOOSE_MODE(foo, bar) = foobar; So add an additional __CHOOSE_MODE syntax for users which need to get a lvalue, which uses (a ? &foo : &bar) inside a function, casts the result to the correct type and dereference the pointer, and use it where needed (i.e. in ) The patch builds and runs correctly (this has been tested on i386 only, not on x86_64), and removes all the warnings. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.112, 2005-03-28 19:47:41-08:00, blaisorblade@yahoo.it [PATCH] uml: real fix for __gcov_init symbols Correctly export __gcov_init for cases where it's needed, by adding a weak definition for the case when GCC does not define this symbol and letting it being overriden by the real definition when GCC defines it (recent ones). Can't be implemented as a test on GCC version because SuSE has a crippled GCC, declared as 3.3.4 but having a lot of backported features. Also, since gcc 3.4.3 requires profiling options even during linking, add profiling options to final link stage. Signed-off-by: Paolo 'Blaisorblade' Giarrusso CC: Anton Altaparmakov Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.111, 2005-03-28 19:47:24-08:00, blaisorblade@yahoo.it [PATCH] uml: add kconfig debug deps Add some needed dependencies for some debug options and hide the MAGIC_SYSRQ option for UML, since it displays this option in another menu. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.110, 2005-03-28 19:47:08-08:00, blaisorblade@yahoo.it [PATCH] uml - kbuild: link cmd Use the cmd_* syntax to define a command for symlink creations in UML (to reuse files from other archs). Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.109, 2005-03-28 19:46:51-08:00, blaisorblade@yahoo.it [PATCH] uml: factor out common code in user-obj handling With Vadim Abrossimov *) Handle USER_OBJS through the general Kbuild infrastructure; the trick we use is to change c_flags only for USER_OBJS. This ain't at all worse than the previous kludgy solution, enables us to use a better dependency handling and to support MODVERSIONS. And it is UML-specific, as a bonus. So, no "it ain't clean enough" reasoning is allowed to hold this patch until you find a better solution. Leaving there the current broken code is not accepted. *) Move similar definitions from Makefiles to the newly created arch/um/scripts/Makefile.rules and include it everywhere needed. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.108, 2005-03-28 19:46:33-08:00, blaisorblade@yahoo.it [PATCH] Uml: little build fixes From: Al Viro Easier parts from "cross-build" (or "UML-kbuild") patch from Al Viro: *) abuses of host cc/ld/objcopy/paths are gone *) some #include path fixes *) other little abuses fixed *) remove LIBC_DIR var, ask gcc where libc.a is placed. This creates no problem so can be merged very likely. Note: only tested on i386, give a run on x86-64. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: "Vadim Abrossimov" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.107, 2005-03-28 19:46:15-08:00, blaisorblade@yahoo.it [PATCH] uml: disable more hardware kconfig opt and rename USERMODE to UML Disable some hardware-only configuration options when configuring for ARCH=um. By the way, we rename CONFIG_USERMODE to CONFIG_UML, as requested some time ago by the UML maintainer Jeff Dike. We also update defconfig as a consequence of all this. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.106, 2005-03-28 19:45:58-08:00, blaisorblade@yahoo.it [PATCH] uml: extend cmd line limits From: "Catalin(ux aka Dino) BOIE" , Paolo 'Blaisorblade' Giarrusso , Jeff Dike Increase UML command line size. And fix a crash from passing an overly-long command line to UML. XXX: check that init can handle 128 params and 128 env. var. The original patch set this limit to 256, but it seems me too much. Think! Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.105, 2005-03-28 19:45:42-08:00, blaisorblade@yahoo.it [PATCH] uml: cpu_relax fix Use rep_nop instead of barrier for cpu_relax, following $(SUBARCH)'s doing that (i.e. i386 and x86_64). Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.104, 2005-03-28 19:45:26-08:00, blaisorblade@yahoo.it [PATCH] uml: fix compile Quick compile fix for i386-only change (which interacts with UML since we include headers from include/asm-$(SUBARCH)), which keeps the old behaviour and hence should cause no problems. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.103, 2005-03-28 19:45:09-08:00, blaisorblade@yahoo.it [PATCH] uml: cope with uml_net security fix Pass the interface to close as an fd besides that by name... passing it by name does not work with newer uml_net because that allows to ifconfig down arbitrary interfaces, while if you have an open fd to the SLIP interface it means you have full access to it (and thus can close it). Passing only by fd does not work with older utilities, so we do both things (which does not hurt). Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.102, 2005-03-28 19:44:51-08:00, takata@linux-m32r.org [PATCH] m32r_sio driver update I made a patch to update m32r_sio driver. Compile checked and tested on a M32700UT eva board with SMP kernel. It looks working... __register_m32r_sio, register_m32r_sio, unregister_m32r_sio are still remained. I'm going to take a look them after. Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.101, 2005-03-28 19:44:35-08:00, takata@linux-m32r.org [PATCH] m32r: Fix M32102 I-cache invalidation This patch fixes I-cache invalidation operation for M32102 chip, which is one of m32r MMU-less targets. Before this fix, the m32r kernel for M32102 chip missed I-cache invalidation operation and switched off I-cache unintentionally. This bug caused awful performance degradation. Signed-off-by: Mamoru Sakugawa Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.100, 2005-03-28 19:44:19-08:00, takata@linux-m32r.org [PATCH] m32r: Update MMU-less support #3 This patch is for updating m32r's MMU-less support. * arch/m32r/boot/compressed/Makefile: Use m32r-elf-gcc for MMU-less targets; change ELF object format from elf32-m32r-linux to elf32-m32r for !CONFIG_MMU. * arch/m32r/boot/compressed/head.S: Set up cache for M32102 chip. * arch/m32r/boot/setup.S: ditto. * arch/m32r/kernel/module.c: Module support for !CONFIG_MMU. Signed-off-by: Kazuhiro Inaoka Signed-off-by: Hayato Fujiwara Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.99, 2005-03-28 19:44:02-08:00, takata@linux-m32r.org [PATCH] m32r: Update MMU-less support #2 This patch is for updating m32r's MMU-less support. * arch/m32r/boot/compressed/m32r_sio.c: - Fix serial output routine * include/asm-m32r/mmu.h: - Update mm_context_t definition Signed-off-by: Yoshinori Sato Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.98, 2005-03-28 19:43:45-08:00, takata@linux-m32r.org [PATCH] m32r: Update MMU-less support #1 This patch is for updating m32r's MMU-less support. * arch/m32r/kernel/entry.s: - Fix syscall table for !CONFIG_MMU * arch/m32r/kernel/traps.c: - Fix EIT vector setup routine for !CONFIG_MMU Signed-off-by: Naoto Sugai Signed-off-by: Hirokazu Takata Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.97, 2005-03-28 19:43:28-08:00, pavel@ucw.cz [PATCH] swsusp: kill swsusp_restore This kills swsusp_resume; it should be arch-neutral but some i386 code sneaked in. And arch-specific code is better done in assembly anyway. Plus it fixes memory leaks in error paths. Signed-off-by: Rafael J. Wysocki Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.96, 2005-03-28 19:43:12-08:00, pavel@ucw.cz [PATCH] swsusp: small updates This kills unused macro and write-only variable, and adds messages where something goes wrong with suspending devices. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.95, 2005-03-28 19:42:55-08:00, pavel@ucw.cz [PATCH] pm: remove obsolete pm_* from vt.c Those functions are useless these days, and should be gone. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.94, 2005-03-28 19:42:39-08:00, pavel@ucw.cz [PATCH] suspend-to-ram: update video.txt with more systems This updates video.txt documentation. Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.93, 2005-03-28 19:42:22-08:00, pavel@ucw.cz [PATCH] swsusp: Add missing refrigerator calls This adds few more places where it is possible freeze kernel threads. From: Nigel Cunningham Signed-off-by: Pavel Machek Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.92, 2005-03-28 19:42:04-08:00, rth@twiddle.net [PATCH] alpha spinlock.h update Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.91, 2005-03-28 19:41:48-08:00, rddunlap@osdl.org [PATCH] kernel-parameters: IA-32/X86-64 cleanups Convert "kernel-parameters.txt" to use IA-32 in place of x86 and X86-64 in place of x86_64, to be in line with other architecture documentation conventions. Add reference to Documentation/x86_64/boot-options.txt . Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.90, 2005-03-28 19:41:32-08:00, blaisorblade@yahoo.it [PATCH] x86-64: forgot asmlinkage on sys_mmap Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.89, 2005-03-28 19:41:15-08:00, kenneth.w.chen@intel.com [PATCH] x86_64: hugetlb fix x86-64 may have to allocate a bunch of upper levels of pagetables, and those allocations may fail. When they do, unmap_hugepage_range() needs to be able to clean up after them. Acked-by: William Lee Irwin III Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.88, 2005-03-28 19:40:59-08:00, blaisorblade@yahoo.it [PATCH] x86_64: remove old decl (trivial) vm_force_exec32 and friends were still alive on 2.6.9 release, but now (and in 2.6.10) they seem deleted. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.87, 2005-03-28 19:40:43-08:00, blaisorblade@yahoo.it [PATCH] x86-64: kconfig typo Trivial typo: default off instead of default n in kbuild. Signed-off-by: Paolo 'Blaisorblade' Giarrusso Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.86, 2005-03-28 19:40:26-08:00, ak@suse.de [PATCH] x86_64: Clean up the IOMMU initialisation a bit Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.85, 2005-03-28 19:40:09-08:00, ak@suse.de [PATCH] x86_64: Fix missing delay when the TSC counter just overflowed Fix missing delay when the TSC counter just overflowed Noticed by Jan Beulich Signed-off-by: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.84, 2005-03-28 19:39:53-08:00, ak@suse.de [PATCH] x86_64: Fix gcc 3.4 warning in bitops.c Move include down to avoid: arch/x86_64/lib/bitops.c:18: warning: `find_first_zero_bit' declared inline after being called Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.83, 2005-03-28 19:39:37-08:00, ak@suse.de [PATCH] x86_64: Fix exception stack detection during backtraces The test in in_exception_stack was done the wrong way round, which lead to incorrect exception stack detection in the kernel backtracer. Also fix a off by one in the test. Noticed by Jan Beulich Signed-off-by: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.82, 2005-03-28 19:39:20-08:00, ak@suse.de [PATCH] x86_64: Fix CONFIG_PREEMPT Fix a pretty bad bug in the x86-64 preempt support. The test for interrupts off was done the wrong way round, which would lead to kernel preemption only when interrupts were off. Found by Jan Beulich. Signed-off-by: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.81, 2005-03-28 19:39:05-08:00, ak@suse.de [PATCH] x86_64: Fix SMP fallback to UP When falling back to UP on a SMP kernel make sure cpu_sibling_map is always initialized. Otherwise scheduler_tick eventually runs into incompletely initialized sched domains and oopses. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.80, 2005-03-28 19:38:48-08:00, ak@suse.de [PATCH] x86_64: Don't enable interrupts in oopses unconditionally The original reason for it was to allow backwards scrolling on the console, but that didn't work for other reasons anyways. And in some cases the early interrupt enabling can lead to a nested oops. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.79, 2005-03-28 19:38:32-08:00, ak@suse.de [PATCH] x86_64: Only free PMDs and PUDs after other CPUs have been flushed This avoids a race on AMD systems where other CPUs could speculatively follow an already freed page table. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.78, 2005-03-28 19:38:15-08:00, ak@suse.de [PATCH] x86_64: Change the y2069 bug in the RTC timer code to be a y2100 bug. That's ok since x86-64 systems only exist since 2001. More is unfortunately not possible because the RTC CMOS only supports two decimal digits. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.77, 2005-03-28 19:37:59-08:00, ak@suse.de [PATCH] x86_64: Fix LDT descriptor Fix bug introduced with the TLS system calls in 2.5. The LDT descriptor needs two entries, not one. It would overlap into the TLS range, which means setting an LDT would corrupt the first TLS descriptor. Noticed by Jan Beulich Signed-off-by: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.76, 2005-03-28 19:37:42-08:00, ak@suse.de [PATCH] x86_64: Always reload CR3 completely when a lazy MM thread drops a MM. Always reload CR3 completely when a lazy MM thread drops a MM. This avoids keeping stale mappings around in the TLB that could be run into by the CPU by itself (e.g. during prefetches). Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.75, 2005-03-28 19:37:27-08:00, ak@suse.de [PATCH] x86_64: Minor fix to TLB flush IPI Minor fix to TLB flush IPI Fix minor harmless bug. When doing a flush IPI we used 0xffffffff as the catch all wildcard, which is a valid address in a 64bit process. When this page was flushed the IPI handler would do a full flush by mistake instead of just flushing the page. Use -1ULL instead. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.74, 2005-03-28 19:37:10-08:00, ak@suse.de [PATCH] x86_64: Fix NMI RTC access race Fix NMI RTC access race This patch fixes a race between the CMOS clock setting and the NMI code. The NMI code indiscriminatly sets index registers and values in the same place the CMOS clock is set. If you are setting the CMOS clock and an NMI occurs, Bad values could be written to or read from the CMOS RAM, or the NMI operation might not occur correctly. Resetting the NMI is not required on x86_64 (in fact, it should not be done according to the ICH5 documentation). This patch simply removes the useless code. Signed-off-by: Corey Minyard Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.73, 2005-03-28 19:36:54-08:00, ak@suse.de [PATCH] x86_64: resume PIT for x86_64 resume PIT for x86_64 Signed-off-by: Luming Yu Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.72, 2005-03-28 19:36:37-08:00, ak@suse.de [PATCH] x86_64: mem=XXX will now limit kernel memory to XXX instead of XXX+1MB mem=XXX will now limit kernel memory to XXX instead of XXX+1MB Signed-off-by: Suresh Siddha Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.71, 2005-03-28 19:36:20-08:00, ak@suse.de [PATCH] x86_64: Fix formatting and white space in signal code Fix formatting and white space in signal code No functional changes. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.70, 2005-03-28 19:36:04-08:00, ak@suse.de [PATCH] x86_64: Fix special ISA case in iounmap() Fix special ISA case in iounmap(), from i386. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.69, 2005-03-28 19:35:48-08:00, ak@suse.de [PATCH] x86_64: Cleanups in new backtrace code in oprofile Remove 4/4 support code. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.68, 2005-03-28 19:35:31-08:00, ak@suse.de [PATCH] x86_64: Include PCI-Express configuration Include PCI-Express configuration Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.67, 2005-03-28 19:35:15-08:00, ak@suse.de [PATCH] x86_64: Work around Tyan BIOS MTRR initialization bug. Work around Tyan BIOS MTRR initialization bug. Some Tyan AMD BIOS don't initialize the first fixed range MTRR, which causes it to contain random bogus values. When the MTRR tries to duplicate the MTRR state to other CPUs at startup it oopses because of this. This patch works around this by catching exception while setting MTRRs. It would be better to validate all fixed range MTRRs and fix them, but that would be very complicated code. This simple hack seems to work too (except that the first 64k of physical memory are likely uncached). A BIOS update fixes that. Signed-off-by: Andi Kleen Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.66, 2005-03-28 19:34:59-08:00, ak@suse.de [PATCH] x86_64: Give out of line get_user better calling conventions Give out of line get_user better calling conventions Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.65, 2005-03-28 19:34:42-08:00, ak@suse.de [PATCH] x86_64: Move put_user out of line Move put_user out of line. Generates smaller code. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.64, 2005-03-28 19:34:25-08:00, ak@suse.de [PATCH] x86_64: Remove stale unused file Remove stale unused file Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.63, 2005-03-28 19:34:09-08:00, ak@suse.de [PATCH] x86_64: Remove unused and broken code in io.h Remove unused and broken code in io.h Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.62, 2005-03-28 19:33:53-08:00, ak@suse.de [PATCH] x86_64: Remove noisy printk in K8 bus detection code Remove noisy printk in K8 bus detection code Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.61, 2005-03-28 19:33:37-08:00, ak@suse.de [PATCH] x86_64: Remove obsolete comments in vsyscall.c and fix some others. Remove obsolete comments in vsyscall.c and fix some others. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.60, 2005-03-28 19:33:20-08:00, mikpe@csd.uu.se [PATCH] x86_64: fix vsyscall.c syntax error arch/x86_64/kernel/vsyscall.c:193: error: syntax error before 'vsyscall_sysctl_change' Signed-off-by: Mikael Pettersson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.59, 2005-03-28 19:33:04-08:00, ak@suse.de [PATCH] x86_64: Nop out system call instruction in vsyscall page when not needed Nop out system call instruction in vsyscall page when not needed. This may make some attacks more difficult. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.58, 2005-03-28 19:32:48-08:00, ak@suse.de [PATCH] x86_64: Fix indentation in vsyscall.c. No functional changes. Fix indentation in vsyscall.c. No functional changes. Needed for followup patches. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.57, 2005-03-28 19:32:32-08:00, ak@suse.de [PATCH] x86_64: Remove never used obsolete file Remove never used obsolete file. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.56, 2005-03-28 19:32:15-08:00, ak@suse.de [PATCH] x86_64: Move HPET selection into processor specific options Move HPET selection into processor specific options. Pointed out by Pavel Roskin Fix the help text up a bit. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.55, 2005-03-28 19:31:58-08:00, ak@suse.de [PATCH] x86_64: Fix compilation with CONFIG_PROC_FS=n Fix compilation with CONFIG_PROC_FS=n Pointed out by Randy Dunlap Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.54, 2005-03-28 19:31:42-08:00, ak@suse.de [PATCH] x86_64: Busses array is only indexed with a 8bit value, doesn't make sense Busses array is only indexed with a 8bit value, doesn't make sense to make it bigger. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.53, 2005-03-28 19:31:26-08:00, ak@suse.de [PATCH] x86_64: Add an 64bit entry path for exec Add an 64bit entry path for exec. From: Also fix up the entry address in vmlinux. >> I have moved most of what was code duplication until after we are in 64bit mode. And I have reduced the amount of code in the 32bit entry path a little bit. And to keep things maintainable we now always execute the full 64bit entry point. << Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.52, 2005-03-28 19:31:09-08:00, ak@suse.de [PATCH] x86_64: Add new AMD cpuid flags to cpuinfo Add new AMD cpuid flags to cpuinfo Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.51, 2005-03-28 19:30:53-08:00, ak@suse.de [PATCH] x86_64: Update defconfig Update defconfig Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.50, 2005-03-28 19:30:36-08:00, juhl-lkml@dif.dk [PATCH] rename FPU_*verify_area to FPU_*access_ok Since verify_area is going the way of the Dodo soon it seems resonable to no longer refer to it in wrapper functions/macros. FPU_verify_area and FPU_code_verify_area have already been converted to call access_ok so now seems a good time to rename them. This patch makes no functional changes at all. Signed-off-by: Jesper Juhl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.49, 2005-03-28 19:30:20-08:00, rddunlap@osdl.org [PATCH] i386: add kstack=N option (from x86_64) Add "kstack=N" boot option for IA-32 (from x86_64). Signed-off-by: Randy Dunlap Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.48, 2005-03-28 19:30:04-08:00, pazke@donpac.ru [PATCH] es7000 dmi cleanup This moves es7000_plat global variable out of DMI code. Signed-off-by: Andrey Panin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.47, 2005-03-28 19:29:48-08:00, jason@rightthere.net [PATCH] ES7000 Legacy Mappings Update This update only affects Unisys' ES7000 machines. The patch reflects a change needed to determine which generation of ES7000 is currently running. The next generation of ES7000s will have conventional legacy support so the patch accommodates for this. This patch has been tested and verified on both an authentic 5xx ES7000 box and the next generation ES7000 box. Signed-off-by: Natalie Protasevich Signed-off-by: Jason Davis Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.46, 2005-03-28 19:29:31-08:00, manfred@colorfullife.com [PATCH] fix put_user for 80386 Linus noticed that put_user doesn't to the manual page table lookup that is required for cpus without a working WP flag. The solution is simple: if CONFIG_X86_WP_WORKS_OK is not set, then the put_user macros must call __copy_to_user_ll(). That function contains the required checks. This is already implemented for __put_user_size(), somehow I overlooked __put_user_{1,2,4,8,X}. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.45, 2005-03-28 19:29:15-08:00, venkatesh.pallipadi@intel.com [PATCH] rtc_lock is irq-safe rtc_lock is held during timer interrupts. So, we should block interrupts while holding it. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.44, 2005-03-28 19:28:58-08:00, zwane@arm.linux.org.uk [PATCH] APM: fix interrupts enabled in device_power_up APM was calling device_power_down and device_power_up with interrupts enabled, resulting in a few calls to get_cmos_time being done with interrupts enabled (rtc_lock needs to be acquired with interrupts disabled). Signed-off-by: Zwane Mwaikambo Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.43, 2005-03-28 19:28:42-08:00, george@mvista.com [PATCH] x86: CMOS time update optimisation This patch changes the update of the cmos clock to be timer driven rather than poll driven by the timer interrupt function. If the clock is not being synced to an outside source the timer is removed and thus system overhead is nill in that case. The update frequency is still ~11 minutes and missing the update window still causes a retry in 60 seconds. We want the calls to sync_cmos_clock() to be made in a consistent environment. This was not true when calling it directly from the NTP call code. The change means that sync_cmos_clock() is ALWAYS called from run_timers(), i.e. as a timer call back function. Also, call the timer code only through the timer interface (set a short timer to do it from the ntp call). Signed-off-by: George Anzinger Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.42, 2005-03-28 19:28:26-08:00, yuasa@hh.iij4u.or.jp [PATCH] mips: update VR41xx RTC support This patch updates NEC VR4100 series RTC support. Signed-off-by: Yoichi Yuasa Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.41, 2005-03-28 19:27:38-08:00, akpm@osdl.org [PATCH] mips linkage fix Jim Gifford The iomap.o functions aren't dragged into the kernel if the build is fully modular. But modules need them. So link iomap.o into the kernel unconditionally. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.40, 2005-03-28 19:27:21-08:00, michael@ellerman.id.au [PATCH] ppc64: numa: Remove redundant and broken overlap check The numa code used to have to handle the fact that memory regions (as reported by OF) had been coallesced in the lmb struct and so might overlap node boundaries. Since Mike's patch went in this doesn't happen anymore, because we iterate over the memory regions from OF directly. This patch simply removes a check that catered for the overlapping case, which now "can't happen". The condition also happens to be broken in the current code, but in a painless way, so it's as good as removed already. Signed-off-by: Michael Ellerman Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.39, 2005-03-28 19:27:06-08:00, olof@austin.ibm.com [PATCH] PPC64: Fix LPAR IOMMU setup code for p630 Here's a fix to deal with p630 systems in LPAR mode. They're to date the only system that in some cases might lack a dma-window property for the bus, but contain an overriding property in the device node for the specific adapter/slot. This makes the device setup code a bit more complex since it needs to do some of the things that the bus setup code has already done. Signed-off-by: Olof Johansson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.38, 2005-03-28 19:26:49-08:00, benh@kernel.crashing.org [PATCH] ppc64: Fix ethernet PHY reset on iMac G5 On iMac G5, when netbooting (or causing any other ethernet activity from within the Open Firmware environment), the PHY is put into a low power state before booting the OS. The result is that Linux doesn't see it and networking doesn't work. This patch adds the ethernet PHY reset platform hook to pmac_feature.c on ppc64 (it already is commonly used on ppc32 as lots of macs have this same problem, so the hook definition is already there and sungem is already calling it). Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.37, 2005-03-28 19:26:33-08:00, michael@ellerman.id.au [PATCH] ppc64: Make numa=off command line argument work again Mike's patch "ppc64: NUMA memory fixup (another try)" broke the numa code when "numa=off" is specified on the kernel command line. The fix is to pretend everything is in node 0 when numa is disabled. Boot tested on pSeries LPAR with numa=off and numa=debug (ie. on). Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.36, 2005-03-28 19:26:17-08:00, anton@samba.org [PATCH] ppc64: fix pseries hcall stubs Fix a number of bugs in our pseries hcall stubs: - store parameters in the area specified by the ABI, no need to create stack frames. - plpar_hcall_4out would corrupt r14 - merge multiple HVSC definitions Signed-off-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.35, 2005-03-28 19:26:01-08:00, anton@samba.org [PATCH] ppc64: fix semtimedop compat syscall As with sparc64, the ppc64 version of semtimedop was incorrect - the timeout is in the fifth argument. I got caught copying again :) Signed-off-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.34, 2005-03-28 19:25:45-08:00, anton@samba.org [PATCH] ppc64: fix linkage error on G5 Move the ppc64 specific cond_syscall(ppc_rtas) into sys_ni.c so that it takes effect. With this fixed we can remove the #define hack. Signed-off-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.33, 2005-03-28 19:25:28-08:00, mikpe@csd.uu.se [PATCH] ppc64: fix compile error in prom.c arch/ppc64/kernel/prom.c:1691: error: syntax error before 'prom_reconfig_notifier' arch/ppc64/kernel/prom.c:1692: error: field name not in record or union initializer arch/ppc64/kernel/prom.c:1692: error: (near initialization for 'prom_reconfig_nb') arch/ppc64/kernel/prom.c:1692: warning: initialization makes pointer from integer without a cast Signed-off-by: Mikael Pettersson Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.32, 2005-03-28 19:25:12-08:00, mikpe@csd.uu.se [PATCH] ppc64: fix gcc4 compile error in paca.h In file included from include/asm/spinlock.h:20, from include/linux/spinlock.h:43, from include/linux/signal.h:5, from arch/ppc64/kernel/asm-offsets.c:17: include/asm/paca.h:25: error: array type has incomplete element type Signed-off-by: Mikael Pettersson Acked-by: Anton Blanchard Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.31, 2005-03-28 19:24:56-08:00, paulus@samba.org [PATCH] ppc64: pSeries_iommu.c: use pSeries reconfig notifier Use the pSeries_reconfig notifier chain for tearing down the iommu table when a device node is removed. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.30, 2005-03-28 19:24:40-08:00, paulus@samba.org [PATCH] ppc64: pci_dn.c: use pSeries reconfig notifier Use the pSeries_reconfig notifier list to handle newly added pci device nodes. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.29, 2005-03-28 19:24:23-08:00, trini@kernel.crashing.org [PATCH] ppc32: 8xx typo fix The following patch fixes a typo which was introduced in the great SPRN_ renaming. Signed-off-by: Pantelis Antoniou Signed-off-by: Tom Rini Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.28, 2005-03-28 19:24:07-08:00, waite@skycomputers.com [PATCH] ppc32: fix broken compile on Sky Computers HDPU platform This fixes some compile errors in Sky Computers HDPU platform that were created by a bad patch. Signed-off-by: Brian Waite Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.27, 2005-03-28 19:23:50-08:00, benh@kernel.crashing.org [PATCH] ppc32/64: Map prefetchable PCI without guarded bit While experimenting with framebuffer access performances, we noticed a very significant improvement in write access to it when not setting the "guarded" bit on the MMU mappings. This bit basically says that reads and writes won't have side effects (it allows speculation). It appears that it also disables write combining. This patch implements a new phys_mem_access_prot() arch callback for use by /dev/mem and fbdev when available, implements it for ppc32 and ppc64, and modifies /dev/mem and fbdev to use it, respectively when available or on ppc. I didn't change fbdev to use it on all archs when available because there is already a whole lot of arch specific mess in there (more than in /dev/mem !) that I didn't feel like messing with, but archs maintainers are welcome to give it a go). The old mechanism in /dev/mem is still there, but arch maintainers should probably switch to this once which is more consistent imho. Finally, the ppc32 and ppc64 implementation of this and of the PCI mmap calls (used by /proc and /sys) are modified to check if the mapping happens in a prefetchable PCI resource, in which case, the guarded bit is not set for the pgprot. In fact, ppc32 implementation of this code is updated to be identical to ppc64. This improves framebuffer write performance on a simple test paul wrote from about 50Mb/sec to 200Mb/sec on my M9 based laptop and on a G5. The new hook will automatically catch up Xfree mmap's from /dev/mem, so it will work out of the box with existing X servers. Kernel fbdev accesses aren't improved yet as ioremap doesn't use that mecanism. Signed-off-by: Benjamin Herrenschmidt Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.26, 2005-03-28 19:23:33-08:00, mgreer@mvista.com [PATCH] ppc32: Fix Sandpoint Soft Reboot This patch allows the Freescale Sandpoint to perform soft reboots. A write of 0x00 to the Winbond's Chip Select Control Register was clearing the Upper BIOS Chip Select Enable bit which unmaps the boot flash. The comment associated with the write noted that it was enabling the RTC and Keyboard address locations, but the bits in question (1 and 0) are reserved when the Winbond chip is in PowerPC mode. Also, the bits are 1 for enable, 0 for disable, therefore the original code was actually disabling the address locations. The patch also corrects errors in the definitions of 2 configuration bits in the Tundra Tsi107 bridge's MAPB Options register. Signed-off-by Randy Vinson Signed-off-by Mark A. Greer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.25, 2005-03-28 19:23:16-08:00, perchrh@pvv.org [PATCH] ppc32: dmasound compilation fix sound/built-in.o(.init.text+0xb68): In function `dmasound_awacs_init': : undefined reference to `pmac_xpram_read' Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.24, 2005-03-28 19:22:59-08:00, galak@freescale.com [PATCH] ppc32: Report chipset version in common /proc/cpuinfo handling Moved reporting of chipset revision from board specific to common handing of /proc/cpuinfo. In light of numerous PPC system-on-chip devices, we report both the cpu version (reflects the core version) and the chipset version (reflects the system-on-chip or bridge version). Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.23, 2005-03-28 19:22:43-08:00, galak@freescale.com [PATCH] ppc32: typo fix in load/store string emulation Patch fixes a typo in the emulation of load/store string emulations pointed out by Segher Boessenkool. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.22, 2005-03-28 19:22:27-08:00, galak@freescale.com [PATCH] ppc32: Fix CONFIG_SERIAL_TEXT_DEBUG support on 83xx The uart initialization for CONFIG_SERIAL_TEXT_DEBUG on 83xx was passing in physical addresses instead of effective. Additional, fix the Kconfig support to be for all 83xx devices, not just the MPC834x SYS board. Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.21, 2005-03-28 19:22:11-08:00, galak@freescale.com [PATCH] ppc32: Move 83xx & 85xx device and system description files This patch moves the 83xx & 85xx device and system description files out of the platform directory (used for board code) and into the syslib directory (used for common system code). Signed-off-by: Kumar Gala Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.20, 2005-03-28 19:21:42-08:00, mgreer@mvista.com [PATCH] ppc32: Fix mv64x60 internal SRAM size ppc32: Fix wrong size for mv64[34]60's internal SRAM. - Fix incorrect SRAM size - Minor Kconfig cleanups for mv64x60 platforms Signed-off-by: Mark A. Greer Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.19, 2005-03-28 19:21:26-08:00, sds@tycho.nsa.gov [PATCH] SELinux: add name_connect permission check This patch adds a name_connect permission check to SELinux to provide control over outbound TCP connections to particular ports distinct from the general controls over sending and receiving packets. Signed-off-by: Stephen Smalley Signed-off-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.18, 2005-03-28 19:21:10-08:00, sds@tycho.nsa.gov [PATCH] SELinux: audit unrecognized netlink messages This patch changes SELinux to audit any unrecognized netlink messages in controlled classes rather than silently rejecting them, and to allow them if in permissive mode. Please apply. Signed-off-by: Stephen Smalley Signed-off-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.17, 2005-03-28 19:20:54-08:00, sds@tycho.nsa.gov [PATCH] SELinux: allow mounting of filesystems with invalid root inode context This patch alters the SELinux handling of inodes with invalid security contexts so that a filesystem with a root inode that has an invalid security context can still be mounted for administrative recovery without disabling SELinux altogether. Signed-off-by: Stephen Smalley Signed-off-by: James Morris Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.16, 2005-03-28 19:20:37-08:00, sds@tycho.nsa.gov [PATCH] SELinux: make code static and remove unused code This patch from Adrian Bunk makes needlessly global code static and removes a number of unused global and static functions from SELinux. Please apply. Author: Adrian Bunk Signed-off-by: Stephen Smalley Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.15, 2005-03-28 19:20:20-08:00, jmoyer@redhat.com [PATCH] unused 'size' assignment in filemap_nopage filemap_nopage has the following code: retry_all: size = (i_size_read(inode) + PAGE_CACHE_SIZE - 1) >> PAGE_CACHE_SHIFT; if (pgoff >= size) goto outside_data_content; /* If we don't want any read-ahead, don't bother */ if (VM_RandomReadHint(area)) goto no_cached_page; /* * The "size" of the file, as far as mmap is concerned, isn't bigger * than the mapping */ if (size > endoff) size = endoff; After this, size is not referenced. So, either this potential reassignment of size is superfluous, or we are missing some other code later on in the function. If it is the former, I've attached a patch which will remove the code. (akpm: and endoff can go away too. That was the unused variable which gcc has been warning about for ages. Also, gratuitous whitespace fiddling). Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.14, 2005-03-28 19:20:04-08:00, ak@muc.de [PATCH] Fix mmap of /dev/kmem Fix mmap of /dev/kmem. It cannot ever have worked before. vmalloc is still not supported because that would be more complicated. Signed-off-by: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.13, 2005-03-28 19:19:48-08:00, herbert@13thfloor.at [PATCH] include cleanup in pgalloc.h This patch cleans up asm-*/pgalloc.h by removing the generous includes which are obsoleted (duplicated) by including linux/mm.h (and friends) They are double checked and verified by the PLM cross compiling service (the patched kernel gives the same warnings/errors as the unpatched) http://osdl.org/plm-cgi/plm?module=patch_info&patch_id=4313 Signed-off-by: Herbert Pötzl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.12, 2005-03-28 19:19:32-08:00, akpm@osdl.org [PATCH] slab shrinkers: use vfs_cache_pressure Fix some bugs spotted by Andrea Arcangeli - When we added /proc/sys/vm/vfs_cache_pressure we forgot to allow it to tune the dquot and mbcache slabs as well. - Reduce lock contention in shrink_dqcache_memory(). - Use dqstats.free_dquots in shrink_dqcache_memory(): this is the count of reclaimable objects. - Export sysctl_vfs_cache_pressure to GPL modules for mbcache.o Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.11, 2005-03-28 19:19:14-08:00, clameter@sgi.com [PATCH] mm counter operations through macros This patch extracts all the operations on counters protected by the page table lock (currently rss and anon_rss) into definitions in include/linux/sched.h. All rss operations are performed through the following macros: get_mm_counter(mm, member) -> Obtain the value of a counter set_mm_counter(mm, member, value) -> Set the value of a counter update_mm_counter(mm, member, value) -> Add to a counter inc_mm_counter(mm, member) -> Increment a counter dec_mm_counter(mm, member) -> Decrement a counter With this patch it becomes easier to add new counters and it is possible to redefine the method of counter handling. The counters are an issue for scalability since they are used in frequently used code paths and may cause cache line bouncing. F.e. One may not use counters at all and count the pages when needed, switch to atomic operations if the mm_struct locking changes or split the rss into counters that can be locally incremented. The relevant fields of the task_struct are renamed with a leading underscore to catch out people who are not using the acceessor macros. Signed-off-by: Christoph Lameter Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.10, 2005-03-28 19:18:57-08:00, mort@sgi.com [PATCH] vmscan: move code to isolate LRU pages into separate function I noticed that the loop to pull pages out of the LRU lists for processing occurred twice. This just sticks that code into a separate function to improve readability. Signed-Off-By: Martin Hicks Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.9, 2005-03-28 19:18:41-08:00, manfred@colorfullife.com [PATCH] slab: 64-bit fix Use kmem_bufctl_t instead of int for the loop counters in check_slabp. Signed-of-by: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.8, 2005-03-28 19:18:25-08:00, akpm@osdl.org [PATCH] slab: kfree(null) is unlikely - mark kfree(NULL) as being unlikely - Coding-style consistency for function definitions Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.7, 2005-03-28 19:18:09-08:00, manfred@colorfullife.com [PATCH] slab.[ch]: kmalloc() cleanups I found a new idea for optimizing the loop in kmalloc - now the cleanup both reduces the size of the .text segment in mm/slab.o and speeds up largs kmallocs a bit. I still loose 2 cycles for kmalloc(32,GFP_KERNEL) compared to the current code, but I haven't figured out how I could optimize further. - inline kmem_find_general_cachep() - optimize kmem_find_general_cachep() and document the optimization. - remove duplicate code from __kmalloc(): call kmem_find_general_cachep() directly. Based on a patch from Renaud Lienhart Signed-off-by: Manfred Spraul Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.6, 2005-03-28 19:17:52-08:00, akpm@osdl.org [PATCH] tty overrun time fix moreau francis points out that we need to initialise overrun_time, else the overrun reporting screws up when jiffies is "negative". So initialise tty->overrun_time apropriately, and handle the case where the tty has been open for so long that the overrun time has become "greater than" jiffies. Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.5, 2005-03-28 19:17:36-08:00, jonsmirl@gmail.com [PATCH] handle multiple video cards on the same bus When detecting the boot video device, allow for the case of multiple cards on the same bus. Check each candidate to make sure that the card is active. Signed-off-by: Jon Smirl Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.4, 2005-03-28 19:17:20-08:00, daniel@osdl.org [PATCH] ppc64: fix AIO panic on PPC64 caused by is_hugepage_only_range() When testing AIO on PPC64 (a power5 machine) running 2.6.11 with CONFIG_HUGETLB_PAGE=y, I ran into a kernel panic when a process exits that has done AIO (io_queue_init()) but has not done the io_queue_release(). The exit_aio() code is cleaning up and panicking when trying to free the aio ring buffer. I tracked this down to is_hugepage_only_range() (include/asm-ppc64/page.h) which is doing a touches_hugepage_low_range() which is checking current->mm->context.htlb_segs. The problem is that exit_mm() cleared tsk->mm before doing the mmput() which leads to the exit_aio() and then the panic. Looks like is_hugepage_only_range() is only used in ia64 and ppc64. Fix is to change is_hugepage_only_range() to take an 'mm' as a parameter as well as 'addr' and 'len' and then the ppc64 code could change to use 'mm'. It looks like it has been broken for quite a while. Signed-off-by: Daniel McNeil Acked-by: David Gibson Acked-by: "Luck, Tony" Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.3, 2005-03-28 19:17:04-08:00, linux@dominikbrodowski.net [PATCH] pcmcia: don't send eject request events to userspace Here follow PCMCIA-related patches which allow for kernel-based matching between 16-bit PCMCIA devices and their drivers. If you're using this (and using a special startup script or small tool), you don't need to run "cardmgr" any longer. cardmgr still works, though, allowing for a gradual transition. These patches apply on top of what's in 2.6.11-rc4-mm1; for proper operation pcmcia-bridge-resource-management-fix.patch should be removed first, though. Andrew, please apply them to your next -mm release. 1. Theory of operation I: setting up the sockets ================================================ - the appropriate socket driver is initialized (modprobe or built-in) - a hotplug event (CLASS=pcmcia_socket) is generated - if it's a socket which doesn't map the resources statically, resources available for use by PCMCIA cards need to be marked as "allowed". This is done using either a small shell script[*] or pcmcia-socket-startup[**]. The latter parses /etc/pcmcia/config.opts -- the same file cardmgr currently uses for this purpose. [*] e.g. #!/bin/sh echo -n "+ 0x00000100 - 0x000004cf" > /sys/class/pcmcia_socket/pcmcia_socket1/available_resources_io echo -n "+ 0x60000000 - 0x60ffffff" > /sys/class/pcmcia_socket/pcmcia_socket1/available_resources_mem echo -n "1" > /sys/class/pcmcia_socket/pcmcia_socket1/available_resources_setup_done [**] note: for pcmcia-socket-startup to work properly you need a patch for libsysfs (it is already accepted by the maintainer of the package). See below for details. 2. Theory of operation II: setting up a device ============================================== - a pcmcia device is discovered in the socket - device information is determined and exported to sysfs - a hotplug event is created, passing -- among others -- a complete MODNAME string to userspace. Available match flags are the product ID strings [in userspace, only the hashes are matched -- you can't use strings in modules.alias], manufactor and card ID, the multifunction device number, the pseudo-multifunction device number [this is what e.g. bind "serial_cs", bind "serial_cs" was before], whether it needs a CIS override, and the function ID [this match is only used if it is allowed by userspace -- it should be avoided and will be removed in future, after existing users have been converted to matches of other types]. - modprobe $MODNAME [*] - the device is matched against drivers. function ID matches are ignored at this stage. If the device needs a CIS override, it is requested from userspace using the firmware helpers. It is recommended to have a symlink either from /lib/firmware/cis/ to /etc/pcmcia/cis/ or the other way to let both (old) cardmgr and (new) firmware.agent access the override CIS data. - if no driver was found, an userspace helper checks whether the card is one of two(!) which can only be detected using cardmgr's tuple directive. If this is the case, a CIS override is done using /sys/class/pcmcia_socket/pcmcia_socket%n/cis , loading a CIS with proper identification values. - if this doesn't lead to a driver being bound to the device, function ID-based matches are allowed. [*] note: for this to work properly you need a patch to be written which loads _all_ matching modules, not just one] 3. patches ========== I'll not send the patches which add the proper device identification tables to this list, but only (and a bit later) to Andrew and the appropriate maintainers. You can find them already at http://www.kernel.org/pub/linux/kernel/people/brodo/patches/2.6.11-rc5/ -- they start with pcmcia-25- I used all identification information I could find in pcmcia-cs, the kernel, and some web resources and, but probably missed some. If I did, please send me either the appropriate device info from the cardmgr config file or the output of "pcmcia-modalias" (see below) -- or a PCMCIA_MATCH patch. 4. userspace tools ================== Several GPL[*] userspace tools are required or useful for this (new) method of operation. I'll send them to this list for review, and they're also available _temporarily_ at http://www.kernel.org/pub/linux/kernel/people/brodo/temp-pcmcia-tools.tar.gz I'm still undecided on what to do with these userspace tools. IMO they could either be merged into pcmcia-cs or distributed in addition to pcmcia-cs. Also, I'd be very glad if somebody else could maintain and improve these tools. pcmcia-socket-startup This tool is based on "cardmgr" by Dave Hinds, but most of it was removed. The remains parse the /etc/pcmcia/config file for allowed ioport and iomem ranges and for disallowed IRQs, and sets these using libsysfs. Due to a bug in libsysfs, a patch is needed for this to work properly. It takes one parameter, the socket number to be set up. pcmcia-modalias This tool reads device information and generates a MODALIAS string just like the kernel exports using hotplug for this device. It takes one paramter, the device's bus_id string (e.g. "pcmcia-modalias 1.0" for the first device on the second PCMCIA socket) pcmcia-check-broken-cis This checks whether the CIS is so broken that only the "tuple"-based match is possible. It takes one parameter, the socket the PCMCIA card to be tested is inserted to, and returns nothing (if no CIS override is needed), or the CIS file name. The CIS parsing is done using a much simplified version of what is to be found in drivers/pcmcia/cistpl.c, so this is based on Dave Hinds work as well. hotplug/pcmcia* The hotplug scripts are quite self-explanatory and also allow for "coldplug" (i.e. they work around "missed" events during boot). pccardctl This previously announced tool uses sysfs instead of an ioctl for commands like "eject", "insert", "info" and "ident". [*] reason: they're partly based on other GPL-licensed tools. This patch: Don't inform cardmgr of ejection requests so that "cardctl eject" behaves _exactly_ the same as a physical ejection from an userspace point of view. Removing this allows us to clean up some other code which is otherwise unused. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.2, 2005-03-28 19:16:47-08:00, linux@dominikbrodowski.net [PATCH] pcmcia: don't lock up in rsrc_nonstatic pcmcia_validate_mem struct socket_data wasn't zeroed, so pcmcia_validate_mem() didn't get called. If it is called, though, one possible code-path already holds skt_sem, so lockups occur. Therefore, change calling conventions to pcmcia_validate_mem(). Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.31.1, 2005-03-28 19:16:31-08:00, linux@dominikbrodowski.net [PATCH] pcmcia: properly bail out on MTD-related ioctl invocation Properly set the return value for DS_BIND_MTD, DS_GET_FIRST_REGION and DS_GET_NEXT_REGION. Else trying to bind MTD devices the old (deprecated) way may cause an endless loop in cardmgr. This also happens if the resources weren't made available properly in /etc/pcmcia/config.opts. Signed-off-by: Dominik Brodowski Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.52, 2005-03-28 17:42:49-08:00, torvalds@ppc970.osdl.org Mark "gfp" masks as "unsigned int" and use __nocast to find violations. This makes it hard(er) to mix argument orders by mistake for things like kmalloc() and friends, since silent integer promotion is now caught by sparse. ChangeSet@1.2181.30.54, 2005-03-28 21:29:59+01:00, buytenh@org.rmk.(none) [ARM PATCH] 2583/1: add several registers to arch-ixp2000/ixp2000-regs.h Patch from Lennert Buytenhek These registers ({RAW_STATUS,ENABLE_SET,ENABLE_CLEAR}_[AB]_[0123]) are needed for checking the status of, acking, unmasking and masking the 256 individual thread interrupt sources. This is used by the microengine thread interrupt driver. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King ChangeSet@1.2181.30.53, 2005-03-28 21:04:52+01:00, buytenh@org.rmk.(none) [ARM PATCH] 2582/1: correct thread interrupt comments in arch-ixp2000/irqs.h Patch from Lennert Buytenhek Some comments in arch-ixp2000/irqs.h say that thread interrupts 64-127 are IXP2800-only, but this is not true: IXP2400 has 0-31 and 64-95, and 32-63 and 96-127 are IXP2800-only. Signed-off-by: Lennert Buytenhek Signed-off-by: Deepak Saxena Signed-off-by: Russell King ChangeSet@1.2181.30.52, 2005-03-28 20:38:21+01:00, rmk@flint.arm.linux.org.uk [ARM] Fix ARM TLB shootdown code We missed flushing the TLB when we're unmapping only reserved pages. Since the kernel is now better at passing vmas which correspond solely with the region to unmap, we can use tlb_*_vma() to do "just enough" flushing, both for the TLB and cache. We can avoid all flushes in tlb_*_vma() for the full-MM case, and just do a flush_tlb_mm(). We can omit the cache flushing because this thread will die soon. Signed-off-by: Russell King ChangeSet@1.2181.30.51, 2005-03-28 14:32:20+01:00, vince@org.rmk.(none) [ARM PATCH] 2629/1: Update shark_defconfig default config Patch from Vincent Sanders Updates shark_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.50, 2005-03-28 14:09:29+01:00, vince@org.rmk.(none) [ARM PATCH] 2628/1: Update simpad_defconfig default config Patch from Vincent Sanders Updates simpad_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.49, 2005-03-28 13:47:55+01:00, vince@org.rmk.(none) [ARM PATCH] 2627/1: Update lusl7200_defconfig default config Patch from Vincent Sanders Updates lusl7200_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.48, 2005-03-28 13:39:24+01:00, vince@org.rmk.(none) [ARM PATCH] 2626/1: Update versatile_defconfig default config Patch from Vincent Sanders Updates versatile_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.47, 2005-03-28 13:31:48+01:00, vince@org.rmk.(none) [ARM PATCH] 2625/1: Update lubbock_defconfig default config Patch from Vincent Sanders Updates lubbock_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.46, 2005-03-28 13:22:45+01:00, vince@org.rmk.(none) [ARM PATCH] 2624/1: Update lpd7a404_defconfig default config Patch from Vincent Sanders Updates lpd7a404_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.45, 2005-03-28 13:15:10+01:00, vince@org.rmk.(none) [ARM PATCH] 2623/1: Update lpd7a400_defconfig default config Patch from Vincent Sanders Updates lpd7a400_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.44, 2005-03-28 13:07:48+01:00, vince@org.rmk.(none) [ARM PATCH] 2622/1: Update lart_defconfig default config Patch from Vincent Sanders Updates lart_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.43, 2005-03-28 12:59:29+01:00, vince@org.rmk.(none) [ARM PATCH] 2621/1: Update hackkit_defconfig default config Patch from Vincent Sanders Updates hackkit_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.42, 2005-03-28 12:51:11+01:00, vince@org.rmk.(none) [ARM PATCH] 2620/1: Update h7202_defconfig default config Patch from Vincent Sanders Updates h7202_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.41, 2005-03-28 12:42:46+01:00, vince@org.rmk.(none) [ARM PATCH] 2619/1: Update h7201_defconfig default config Patch from Vincent Sanders Updates h7201_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.40, 2005-03-28 12:35:10+01:00, vince@org.rmk.(none) [ARM PATCH] 2618/1: Update h3600_defconfig default config Patch from Vincent Sanders Updates h3600_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.39, 2005-03-28 12:27:36+01:00, vince@org.rmk.(none) [ARM PATCH] 2617/1: Update fortunet_defconfig default config Patch from Vincent Sanders Updates fortunet_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.38, 2005-03-28 12:19:02+01:00, vince@org.rmk.(none) [ARM PATCH] 2616/1: Update smdk2410_defconfig default config Patch from Vincent Sanders Updates smdk2410_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.37, 2005-03-28 12:11:19+01:00, vince@org.rmk.(none) [ARM PATCH] 2615/1: Update shannon_defconfig default config Patch from Vincent Sanders Updates shannon_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.36, 2005-03-28 12:03:00+01:00, vince@org.rmk.(none) [ARM PATCH] 2614/1: Update jornada720_defconfig default config Patch from Vincent Sanders Updates jornada720_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.35, 2005-03-28 11:54:31+01:00, vince@org.rmk.(none) [ARM PATCH] 2613/1: Update ixp4xx_defconfig default config Patch from Vincent Sanders Updates ixp4xx_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.34, 2005-03-28 11:47:29+01:00, vince@org.rmk.(none) [ARM PATCH] 2612/1: Update ixdp2801_defconfig default config Patch from Vincent Sanders Updates ixdp2801_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.33, 2005-03-28 11:39:28+01:00, vince@org.rmk.(none) [ARM PATCH] 2611/1: Update footbridge_defconfig default config Patch from Vincent Sanders Updates footbridge_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.32, 2005-03-28 11:31:18+01:00, vince@org.rmk.(none) [ARM PATCH] 2610/1: Update epxa10db_defconfig default config Patch from Vincent Sanders Updates epxa10db_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.31, 2005-03-28 11:22:33+01:00, vince@org.rmk.(none) [ARM PATCH] 2609/1: Update ep80219_defconfig default config Patch from Vincent Sanders Updates ep80219_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.30, 2005-03-28 11:14:40+01:00, vince@org.rmk.(none) [ARM PATCH] 2608/1: Update pxa255-idp_defconfig default config Patch from Vincent Sanders Updates pxa255-idp_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.29, 2005-03-28 11:07:06+01:00, vince@org.rmk.(none) [ARM PATCH] 2607/1: Update pleb_defconfig default config Patch from Vincent Sanders Updates pleb_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.28, 2005-03-28 10:58:14+01:00, vince@org.rmk.(none) [ARM PATCH] 2606/1: Update omnimeter_defconfig default config Patch from Vincent Sanders Updates omnimeter_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.27, 2005-03-28 10:49:23+01:00, vince@org.rmk.(none) [ARM PATCH] 2605/1: Update ixdp2800_defconfig default config Patch from Vincent Sanders Updates ixdp2800_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.26, 2005-03-28 10:40:47+01:00, vince@org.rmk.(none) [ARM PATCH] 2604/1: Update ixdp2401_defconfig default config Patch from Vincent Sanders Updates ixdp2401_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.25, 2005-03-28 10:09:55+01:00, vince@org.rmk.(none) [ARM PATCH] 2603/1: Update ixdp2400_defconfig default config Patch from Vincent Sanders Updates ixdp2400_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.24, 2005-03-28 10:02:38+01:00, vince@org.rmk.(none) [ARM PATCH] 2602/1: Update integrator_defconfig default config Patch from Vincent Sanders Updates integrator_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.23, 2005-03-28 09:53:34+01:00, vince@org.rmk.(none) [ARM PATCH] 2601/1: Update enp2611_defconfig default config Patch from Vincent Sanders Updates enp2611_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.22, 2005-03-28 09:44:30+01:00, vince@org.rmk.(none) [ARM PATCH] 2600/1: Update edb7211_defconfig default config Patch from Vincent Sanders Updates edb7211_defconfig to take account of the Kconfig changes this change is slightly more invasive than otehrs in this series because this configuration has not been updated in a *long* time. It appears to build with this config now. Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.21, 2005-03-28 01:57:43+01:00, vince@org.rmk.(none) [ARM PATCH] 2599/1: Update s3c2410_defconfig default config Patch from Vincent Sanders Updates s3c2410_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.20, 2005-03-28 01:35:40+01:00, vince@org.rmk.(none) [ARM PATCH] 2598/1: Update omap_h2_1610_defconfig default config Patch from Vincent Sanders Updates omap_h2_1610_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.1.51, 2005-03-27 16:25:11-08:00, torvalds@ppc970.osdl.org Add '__nocast' sparse annotation to allow people to mark places where implicit casts are not appropriate. This can be used to mark unsigned integers as being uncastable to signed, for example. Or enums as not degrading to integers and vice versa. ChangeSet@1.2181.30.19, 2005-03-28 01:13:42+01:00, vince@org.rmk.(none) [ARM PATCH] 2597/1: Update netwinder_defconfig default config Patch from Vincent Sanders Updates netwinder_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.18, 2005-03-28 00:56:04+01:00, vince@org.rmk.(none) [ARM PATCH] 2596/1: Update mx1ads_defconfig default config Patch from Vincent Sanders Updates mx1ads_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.17, 2005-03-28 00:31:05+01:00, vince@org.rmk.(none) [ARM PATCH] 2595/1: Update mainstone_defconfig default config Patch from Vincent Sanders Updates mainstone_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.16, 2005-03-28 00:08:19+01:00, vince@org.rmk.(none) [ARM PATCH] 2594/1: Update iq80332_defconfig default config Patch from Vincent Sanders Updates iq80332_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.15, 2005-03-27 23:47:51+01:00, vince@org.rmk.(none) [ARM PATCH] 2593/1: Update iq80331_defconfig default config Patch from Vincent Sanders Updates iq80331_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.14, 2005-03-27 23:23:01+01:00, vince@org.rmk.(none) [ARM PATCH] 2592/1: Update iq80321_defconfig default config Patch from Vincent Sanders Updates iq80321_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.13, 2005-03-27 23:01:32+01:00, vince@org.rmk.(none) [ARM PATCH] 2591/1: Update iq31244_defconfig default config Patch from Vincent Sanders Updates iq31244_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.12, 2005-03-27 22:39:04+01:00, vince@org.rmk.(none) [ARM PATCH] 2590/1: Update ebsa110_defconfig default config Patch from Vincent Sanders Updates ebsa110_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.11, 2005-03-27 22:14:50+01:00, vince@org.rmk.(none) [ARM PATCH] 2589/1: Update cerfcube_defconfig default config Patch from Vincent Sanders Updates cerfcube_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.10, 2005-03-27 22:07:05+01:00, vince@org.rmk.(none) [ARM PATCH] 2588/1: Update bast_defconfig default config Patch from Vincent Sanders Updates bast_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.9, 2005-03-27 21:59:21+01:00, vince@org.rmk.(none) [ARM PATCH] 2587/1: Update badge4_defconfig default config Patch from Vincent Sanders Updates badge4_defconfig to take account of the Kconfig changes Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.8, 2005-03-27 21:51:56+01:00, vince@org.rmk.(none) [ARM PATCH] 2586/1: Update clps7500_defconfig default config Patch from Vincent Sanders Updates clps7500_defconfig to take account of the Kconfig changes this depends on 2585/1 Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.7, 2005-03-27 20:09:22+01:00, vince@org.rmk.(none) [ARM PATCH] 2585/1: missing ARCH_CLPS7500 depends in video Kconfig Patch from Vince Sanders While updating default configurations it was noted that the FB_ACORN video config option was missing a dependancy on ARCH_CLPS7500 Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.6, 2005-03-27 20:01:58+01:00, vince@org.rmk.(none) [ARM PATCH] 2584/1: cpufreq Kconfig menu tidyup Patch from Vincent Sanders While updating default configurations it was noted that CONFIG_SA1100 seems to enable the cpufreq entries however the sourced drivers/cpufreq/Kconfig doesnt do a menu section so it looks awful, this tiny patch fixes it. Signed-off-by: Vincent Sanders Signed-off-by: Russell King ChangeSet@1.2181.30.5, 2005-03-27 18:48:13+01:00, dsaxena@net.rmk.(none) [ARM PATCH] 2576/1: Fix LDRD and LDRSB (Thumb) abort handling Patch from Deepak Saxena The ARM LDRD (v5+) and Thumb LDRSB instructions use bit 20/11 (ARM/Thumb) differently than every other instruction, so it is set to 0 (write) even though the instructions are read instructions. This means that during an abort the instructions will be treated as a write and the handler will raise a signal from unwriteable locations if they fault. We have to specifically check for these instructions from the abort handlers to treat them properly. EABI toolchains emit LDRD instructions and even those not using EABI might have handcoded ASM that uses these instructions. This patch creates an abort-macro.S file that is included by the abort-ev* files that need the special cases and changes those handlers to use the macros. ARMv6 does not need the special case handling as the HW takes care of setting the FSR bit appropriately. Signed-off-by: Deepak Saxena Signed-off-by: Russell King ChangeSet@1.2181.30.4, 2005-03-27 18:32:03+01:00, buytenh@org.rmk.(none) [ARM PATCH] 2581/1: two more ixp2000 typo fixes Patch from Lennert Buytenhek Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King ChangeSet@1.2181.30.3, 2005-03-27 18:24:18+01:00, buytenh@org.rmk.(none) [ARM PATCH] 2580/1: remove nonsensical comment from arch-ixp2000/io.h Patch from Lennert Buytenhek Signed-off-by: Lennert Buytenhek Signed-off-by: Russell King ChangeSet@1.2181.30.2, 2005-03-27 18:17:05+01:00, nico@org.rmk.(none) [ARM PATCH] 2579/1: make early boot failure more verbose Patch from Nicolas Pitre It is pointless for cases where one tries to boot a kernel on the wrong ARM subarchitecture, but for those cases where the architecture is similar enough so the low level routines do work then something a bit more informative than "Error: a" might be handy, especially when the bootloader is the culprit. All extra strings are compiled in only if CONFIG_DEBUG_LL is selected of course. Signed-off-by: Nicolas Pitre Signed-off-by: Russell King ChangeSet@1.2181.30.1, 2005-03-27 18:09:23+01:00, nico@org.rmk.(none) [ARM PATCH] 2578/1: unsigned compare in processor and machine list walking Patch from Nicolas Pitre Signed-off-by: Nicolas Pitre Signed-off-by: Russell King ChangeSet@1.2181.1.50, 2005-03-27 17:56:44+10:00, airlied@starflyer.(none) drm: free kbuf if copy from user fails.. From: Eric Anholt Signed-off-by: Dave Airlie ChangeSet@1.2181.1.49, 2005-03-27 17:53:53+10:00, airlied@starflyer.(none) drm: radeon idct defines Add some type 3 idct packets for reference. Signed-off-by: Dave Airlie ChangeSet@1.2181.1.48, 2005-03-27 17:52:15+10:00, airlied@starflyer.(none) drm: radeon driver update 1.16 add R200_EMIT_PP_TRI_PERF_CNTL packet to support brilinear filtering on r200 fix a bug in the 1.15 merge also. From: Roland Scheidegger Signed-off-by: Dave Airlie ChangeSet@1.2181.25.8, 2005-03-27 17:17:28+10:00, airlied@starflyer.(none) drm: change DRIVER_ to CORE_ Change some defines to better naming. Signed-off-by: Dave Airlie ChangeSet@1.2181.25.7, 2005-03-27 16:49:13+10:00, airlied@starflyer.(none) Fix sparse NULL/0 warning: drivers/char/drm/radeon_state.c:1845:15: warning: Using plain integer as NULL pointer Signed-off-by: Randy Dunlap Signed-off-by: Dave Airlie ChangeSet@1.2181.25.6, 2005-03-27 16:47:24+10:00, airlied@starflyer.(none) drm: Remove incorrect "drm_"-prefix from parameter description. Signed-off-by: Magnus Damm Signed-off-by: Dave Airlie ChangeSet@1.2181.29.1, 2005-03-26 13:47:42-08:00, davem@sunset.davemloft.net Merge sunset.davemloft.net:/home/davem/src/BK/network-2.6 into sunset.davemloft.net:/home/davem/src/BK/net-2.6 ChangeSet@1.2181.1.45, 2005-03-26 13:45:09-08:00, geert@linux-m68k.org [PATCH] 3dfx DRM depends on PCI 3dfx DRM depends on PCI Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.44, 2005-03-26 13:44:52-08:00, geert@linux-m68k.org [PATCH] TPM depends on PCI TPM depends on PCI. Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.43, 2005-03-26 13:44:35-08:00, geert@linux-m68k.org [PATCH] M68k: Add missing pieces of thread info TIF_MEMDIE support M68k: Add missing pieces of thread info TIF_MEMDIE support (introduced in 2.6.11-rc3) Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.42, 2005-03-26 13:44:17-08:00, geert@linux-m68k.org [PATCH] Mac NCR5380 SCSI: Fix bus error Mac NCR5380 SCSI: Fix bus error by passing the correct instance pointer to request_irq() Signed-off-by: Finn Thain Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.41, 2005-03-26 13:44:00-08:00, geert@linux-m68k.org [PATCH] M68k: IP checksum updates M68k: IP checksum updates: - ip_fast_csum() needs a "memory" constraint with new gcc versions - Do not always use d0 in ip_fast_csum(), leave register allocation to gcc - Fixed constraints of csum_fold() - Fixed constraints of csum_tcpudp_nofold() - Moved comment for csum_tcpudp_magic() to the right place Signed-off-by: Kars de Jong Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.40, 2005-03-26 13:43:42-08:00, geert@linux-m68k.org [PATCH] Sun-3/3x: Enable Sun partition tables support by default Sun-3/3x: Enable Sun partition tables support by default Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.39, 2005-03-26 13:43:26-08:00, geert@linux-m68k.org [PATCH] Zorro: replace printk() with pr_info() in drivers/zorro/zorro.c Zorro: This fixes the only printk() in drivers/zorro that has no KERN_* constant. Signed-off-by: James Nelson Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.38, 2005-03-26 13:43:09-08:00, geert@linux-m68k.org [PATCH] M68k/stdma: Replace sleep_on() with wait_event() M68k/stdma: Use wait_event() instead of the deprecated sleep_on() function. Since wait_event() expects the condition passed in to be the stopping condition, negate the current one. Signed-off-by: Nishanth Aravamudan Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.37, 2005-03-26 13:42:52-08:00, geert@linux-m68k.org [PATCH] M68k: Update signal delivery handling M68k: Update signal delivery handling, which was broken by the removal of notify_parent() in 2.6.9-rc2 Signed-off-by: Roman Zippel Signed-off-by: Geert Uytterhoeven Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.36, 2005-03-26 13:31:00-08:00, gerg@snapgear.com [PATCH] m68knommu: remove unused variables in mcfserial.c Removed unused/unrefernced mcfrs_tmp_buf array in mcfserial.c, and mutex associated with it. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.35, 2005-03-26 13:30:45-08:00, gerg@snapgear.com [PATCH] m68knommu: cleanup ColdFire specific trap handling asm code A couple of fixes to the ColdFire specific trap handling code: . do not clear the stack alignment bits in exception frame (in Lreturn) breaks return stack badly if applications work with stack un-aligned. . use generated asm-offsets instead of local offset definitions . use THREAD_SIZE definition instead of hard coding stack size (this is needed to support 4k stacks) . some instruction optimization (uses instructions that encode using ledd bytes) Patches originally from Philippe De Muyter Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.34, 2005-03-26 13:30:30-08:00, gerg@snapgear.com [PATCH] m68knommu: use generated asm-offsets in trap handlers Use generated asm-offsets in trap handling code, not local definitions of the offsets. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.33, 2005-03-26 13:30:15-08:00, gerg@snapgear.com [PATCH] m68knommu: move LED variable definitions for 5307 The LED specific setup code that used to be in platform specific start up code moved to board level code. This is specificaly for the Motorola/Freescale 5307 family. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.32, 2005-03-26 13:30:01-08:00, gerg@snapgear.com [PATCH] m68knommu: generate asm-offsets for thread_info struct Offsets into the thread_info structure should be auto generated, instead of using hard coded offset values. This adds entries to the asm-offsets generated for the m68knommu varients. Original patch submitted by Philippe De Muyter Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.31, 2005-03-26 13:29:46-08:00, gerg@snapgear.com [PATCH] m68knommu: move LED variable definitions for 5272 The LED specific setup code that used to be in platform specific start up code moved to board level code. This is specificaly for the Motorola/Freescale 5272 family. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.30, 2005-03-26 13:29:30-08:00, gerg@snapgear.com [PATCH] m68knommu: update MAINTAINERS entry Update entry in MAINTAINERS file to use my generic uclinux.org email address. And also clarify who is support the m68knommu architecture branch. Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.29, 2005-03-26 13:29:14-08:00, gerg@snapgear.com [PATCH] m68knommu: 4k stack support Support for 4k kernel stacks on m68knommu. This cleans up the use of THREAD_SIZE, so it is used instead of hard coded size. Also remove local offset definitions, these are generated in asm-offsets. Patches original from Patch submitted by Philippe De Muyter Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.28, 2005-03-26 13:28:59-08:00, gerg@snapgear.com [PATCH] m68knommu: remove duplicate definition of THREAD_SIZE Remove definition of THREAD_SIZE in page.h for m68knommu. It is defined in thread_info.h Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.27, 2005-03-26 13:28:43-08:00, gerg@snapgear.com [PATCH] m68knommu: fix spelling mistakes in mafcache.h Fix some spelling mistakes in mcfcache.h Patch originally submitted by Geert Uytterhoeven Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.26, 2005-03-26 13:28:27-08:00, gerg@snapgear.com [PATCH] m68knommu: add missing KM_ enums Bring the km_type enum definitions into like with other architectures. Patch originally submitted by Leon Woestenberg Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.1.25, 2005-03-26 13:28:10-08:00, gerg@snapgear.com [PATCH] m68knommu: optimize trap handling asm code Optimize the trap handling asm code for m68knommu targets. Mostly this is using instructions that use fewer bytes to encode. Also remove local definitions for constants that are automatically generated in the asm-offsets header. Original patch came from Philippe De Muyter Signed-off-by: Greg Ungerer Signed-off-by: Linus Torvalds ChangeSet@1.2181.28.1, 2005-03-25 21:05:43-08:00, gregkh@suse.de Merge suse.de:/home/greg/linux/BK/bleed-2.6 into suse.de:/home/greg/linux/BK/foo ChangeSet@1.2181.11.2, 2005-03-25 20:57:47-08:00, gregkh@suse.de merge mainline with 2.6.11.6 and 2.6.11.5 ChangeSet@1.2181.20.43, 2005-03-25 20:50:14-08:00, davem@sunset.davemloft.net [NET]: Forgot to remove doc file when I killed ethertap. Noticed by Chris Wright. Signed-off-by: David S. Miller ChangeSet@1.2181.27.5, 2005-03-25 19:07:07-08:00, torvalds@ppc970.osdl.org Undo VIA AGP TLB flush low-bits-zero patch It causes problems for people, and as DaveJ says: "Yes, it's clearly completely broken". Cset exclude: davej@delerium.kernelslacker.org|ChangeSet|20050223022752|60156 ChangeSet@1.2181.27.4, 2005-03-25 18:14:44-08:00, paulus@samba.org [PATCH] ppc64: prom.c: use pSeries reconfig notifier Use the pSeries_reconfig notifier list to fix up a device node which is about to be added. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.27.3, 2005-03-25 18:14:28-08:00, paulus@samba.org [PATCH] ppc64: introduce pSeries_reconfig.[ch] Move as much pSeries-specific DLPAR/hotplug code as possible into its own file, which is built only when pSeries support is enabled in the config. This new file is intended to contain support code for the "Dynamic Reconfiguration" option in the RISC Platform Architecture, which encompasses both PCI hotplug and dynamic logical partitioning (DLPAR). This patch mostly just moves code around, but the device node addition and removal API is slightly modified. In this way, of_add_node and of_remove_node are now responsible only for safely updating the device tree and global list, without all the other stuff like proc entries etc. of_add_node and of_remove_node have been renamed to of_attach_node and of_detach_node, respectively. This also adds the definitions and api for a notifier chain which is meant to be used by code that must act upon device node addition or removal. Patches to migrate code to the notifier api follow in this series. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.27.2, 2005-03-25 18:04:55-08:00, paulus@samba.org [PATCH] ppc64: make OF node fixup code usable at runtime At boot we recurse through the device tree "fixing up" various fields and properties in the device nodes. Long ago, to support DLPAR and hotplug, we largely duplicated some of this fixup code, the main data structures which are attached to the new device nodes. This patch introduces a helper function (prom_alloc) for handling allocations at both boot and runtime, kills most of the duplicated code, and makes finish_node, finish_node_interrupts, and interpret_pci_props suitable for use at runtime by converting them to use prom_alloc. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.2181.27.1, 2005-03-25 18:04:37-08:00, paulus@samba.org [PATCH] ppc64: preliminary changes to OF fixup functions Preliminary modifications to support using some of the interpret_func family of functions at runtime. Changes the mem_start argument to be passed by reference, and the return type to int for error handling to be implemented in following patches. Signed-off-by: Nathan Lynch Signed-off-by: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds ChangeSet@1.1982.163.38, 2005-03-25 18:00:30-08:00, chrisw@osdl.org Linux 2.6.11.6 TAG: v2.6.11.6