commit 19af35546de68c872dcb687613e0902a602cb20e Author: Linus Torvalds Date: Sun Feb 10 14:18:14 2008 -0800 Linux 2.6.25-rc1 .. and I really need to call it something else. Maybe it is time to bring back the weasel series, since weasels always make me feel good about a kernel. commit b6ce068a1285a24185b01be8a49021827516b3e1 Author: Matthew Wilcox Date: Sun Feb 10 09:45:28 2008 -0500 Change pci_raw_ops to pci_raw_read/write We want to allow different implementations of pci_raw_ops for standard and extended config space on x86. Rather than clutter generic code with knowledge of this, we make pci_raw_ops private to x86 and use it to implement the new raw interface -- raw_pci_read() and raw_pci_write(). Signed-off-by: Matthew Wilcox Signed-off-by: Linus Torvalds commit a0ca9909609470ad779b9b9cc68ce96e975afff7 Author: Ivan Kokshaysky Date: Mon Jan 14 17:31:09 2008 -0500 PCI x86: always use conf1 to access config space below 256 bytes Thanks to Loic Prylli , who originally proposed this idea. Always using legacy configuration mechanism for the legacy config space and extended mechanism (mmconf) for the extended config space is a simple and very logical approach. It's supposed to resolve all known mmconf problems. It still allows per-device quirks (tweaking dev->cfg_size). It also allows to get rid of mmconf fallback code. Signed-off-by: Ivan Kokshaysky Signed-off-by: Matthew Wilcox Signed-off-by: Linus Torvalds commit 712a30e63c8066ed84385b12edbfb804f49cbc44 Author: Bastian Blank Date: Sun Feb 10 16:47:57 2008 +0200 splice: fix user pointer access in get_iovec_page_array() Commit 8811930dc74a503415b35c4a79d14fb0b408a361 ("splice: missing user pointer access verification") added the proper access_ok() calls to copy_from_user_mmap_sem() which ensures we can copy the struct iovecs from userspace to the kernel. But we also must check whether we can access the actual memory region pointed to by the struct iovec to fix the access checks properly. Signed-off-by: Bastian Blank Acked-by: Oliver Pinter Cc: Jens Axboe Cc: Andrew Morton Signed-off-by: Pekka Enberg Signed-off-by: Linus Torvalds commit 30ddb159ff3c632fdad3c0abc2e7d586a59bc5d1 Author: David S. Miller Date: Sun Feb 10 03:48:15 2008 -0800 [PKT_SCHED] ematch: Fix build warning. Commit 954415e33ed6cfa932c13e8c2460bd05e50723b5 ("[PKT_SCHED] ematch: tcf_em_destroy robustness") removed a cast on em->data when passing it to kfree(), but em->data is an integer type that can hold pointers as well as other values so the cast is necessary. Signed-off-by: David S. Miller commit c289b074b66e2e59c65aba73f40b99e797e92d2f Author: Oleg Nesterov Date: Fri Feb 1 20:41:30 2008 +0300 hrtimer: don't modify restart_block->fn in restart functions hrtimer_nanosleep_restart() clears/restores restart_block->fn. This is pointless and complicates its usage. Note that if sys_restart_syscall() doesn't actually happen, we have a bogus "pending" restart->fn anyway, this is harmless. Signed-off-by: Oleg Nesterov Cc: Alexey Dobriyan Cc: Pavel Emelyanov Cc: Peter Zijlstra Cc: Toyo Abe Cc: Andrew Morton Signed-off-by: Thomas Gleixner commit 416529374b4793ba2d2e97e736d108a2e0f3ef07 Author: Oleg Nesterov Date: Fri Feb 1 20:35:31 2008 +0300 hrtimer: fix *rmtp/restarts handling in compat_sys_nanosleep() Spotted by Pavel Emelyanov and Alexey Dobriyan. compat_sys_nanosleep() implicitly uses hrtimer_nanosleep_restart(), this can't work. Make a suitable compat_nanosleep_restart() helper. Introduced by commit c70878b4e0b6cf8d2f1e46319e48e821ef4a8aba hrtimer: hook compat_sys_nanosleep up to high res timer code Also, set ->addr_limit = KERNEL_DS before doing hrtimer_nanosleep(), this func was changed by the previous patch and now takes the "__user *" parameter. Thanks to Ingo Molnar for fixing the bug in this patch. Signed-off-by: Oleg Nesterov Cc: Andrew Morton Cc: Alexey Dobriyan Cc: Pavel Emelyanov Cc: Peter Zijlstra Cc: Toyo Abe Signed-off-by: Thomas Gleixner commit 080344b98805553f9b01de0f59a41b1533036d8d Author: Oleg Nesterov Date: Fri Feb 1 17:29:05 2008 +0300 hrtimer: fix *rmtp handling in hrtimer_nanosleep() Spotted by Pavel Emelyanov and Alexey Dobriyan. hrtimer_nanosleep() sets restart_block->arg1 = rmtp, but this rmtp points to the local variable which lives in the caller's stack frame. This means that if sys_restart_syscall() actually happens and it is interrupted as well, we don't update the user-space variable, but write into the already dead stack frame. Introduced by commit 04c227140fed77587432667a574b14736a06dd7f hrtimer: Rework hrtimer_nanosleep to make sys_compat_nanosleep easier Change the callers to pass "__user *rmtp" to hrtimer_nanosleep(), and change hrtimer_nanosleep() to use copy_to_user() to actually update *rmtp. Small problem remains. man 2 nanosleep states that *rtmp should be written if nanosleep() was interrupted (it says nothing whether it is OK to update *rmtp if nanosleep returns 0), but (with or without this patch) we can dirty *rem even if nanosleep() returns 0. NOTE: this patch doesn't change compat_sys_nanosleep(), because it has other bugs. Fixed by the next patch. Signed-off-by: Oleg Nesterov Cc: Alexey Dobriyan Cc: Michael Kerrisk Cc: Pavel Emelyanov Cc: Peter Zijlstra Cc: Toyo Abe Cc: Andrew Morton Signed-off-by: Thomas Gleixner include/linux/hrtimer.h | 2 - kernel/hrtimer.c | 51 +++++++++++++++++++++++++----------------------- kernel/posix-timers.c | 14 +------------ 3 files changed, 30 insertions(+), 37 deletions(-) commit e13a2e61dd5152f5499d2003470acf9c838eab84 Author: john stultz Date: Sun Feb 10 10:48:03 2008 +0100 ntp: correct inconsistent interval/tick_length usage clocksource initialization and error accumulation. This corrects a 280ppm drift seen on some systems using acpi_pm, and affects other clocksources as well (likely to a lesser degree). Signed-off-by: John Stultz Cc: Roman Zippel Cc: Steven Rostedt Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 21347456abfbf5bc7fcace7327476736bbb28abe Author: Jarek Poplawski Date: Sat Feb 9 23:44:00 2008 -0800 [NET_SCHED] sch_htb: htb_requeue fix htb_requeue() enqueues skbs for which htb_classify() returns NULL. This is wrong because such skbs could be handled by NET_CLS_ACT code, and the decision could be different than earlier in htb_enqueue(). So htb_requeue() is changed to work and look more like htb_enqueue(). Signed-off-by: Jarek Poplawski Signed-off-by: David S. Miller commit 238fc7eac8e74681da7a6cb6748afb5422afc1be Author: Rami Rosen Date: Sat Feb 9 23:43:11 2008 -0800 [IPV6]: Replace using the magic constant "1024" with IP6_RT_PRIO_USER for fc_metric. This patch replaces the explicit usage of the magic constant "1024" with IP6_RT_PRIO_USER in the IPV6 tree. Signed-off-by: Rami Rosen Signed-off-by: David S. Miller commit da219b7c69bd5219fe63b1f2fc2c96eb7a21d2c6 Author: Andrew Morton Date: Sat Feb 9 23:42:17 2008 -0800 starfire: secton fix gcc-3.4.4 on powerpc: drivers/net/starfire.c:219: error: version causes a section type conflict Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 4f14b92f454150293d79031d210cc678329f3e02 Author: Andrew Morton Date: Sat Feb 9 23:41:40 2008 -0800 via-velocity: section fix From: Andrew Morton gcc-3.4.4 on powerpc: drivers/net/via-velocity.c:443: error: chip_info_table causes a section type conflict on this one I had to remove the __devinitdata too. Don't know why. Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit aa738adf89deede805d821feddd5b07999904ffd Author: Andrew Morton Date: Sat Feb 9 23:41:08 2008 -0800 natsemi: section fix gcc-3.4.4 on powerpc: drivers/net/natsemi.c:245: error: natsemi_pci_info causes a section type conflict Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 952b3494cf9d4ff7f48c13363393cab15cde056f Author: Andrew Morton Date: Sat Feb 9 23:40:34 2008 -0800 typhoon: section fix gcc-3.4.4 on powerpc: drivers/net/typhoon.c:137: error: version causes a section type conflict Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit f4e64333f829af6b2fe536b0f556d7a6b561c0ef Author: Sam Ravnborg Date: Sat Feb 9 23:29:28 2008 -0800 isdn: fix section mismatch warning for ISACVer Fix following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x19723): Section mismatch in reference from the function ISACVersion() to the variable .devinit.data:ISACVer WARNING: drivers/isdn/hisax/built-in.o(.text+0x2005b): Section mismatch in reference from the function setup_avm_a1_pcmcia() to the function .devinit.text:setup_isac() ISACVer were only used from function annotated __devinit so add same annotation to ISACVer. One af the fererencing functions missed __devinit so add it and kill an additional warning. Signed-off-by: Sam Ravnborg Acked-by: Karsten Keil Cc: Jeff Garzik Signed-off-by: David S. Miller commit 2fddb6e277ebdb9690c3c7aa0eead5c208701b71 Author: Sam Ravnborg Date: Sat Feb 9 23:28:50 2008 -0800 isdn: fix section mismatch warnings from hisax_cs_setup_card Fix the following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x722): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_teles3() WARNING: drivers/isdn/hisax/built-in.o(.text+0x72c): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_s0box() WARNING: drivers/isdn/hisax/built-in.o(.text+0x736): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_telespci() WARNING: drivers/isdn/hisax/built-in.o(.text+0x747): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_avm_pcipnp() WARNING: drivers/isdn/hisax/built-in.o(.text+0x74e): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_elsa() WARNING: drivers/isdn/hisax/built-in.o(.text+0x755): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_diva() WARNING: drivers/isdn/hisax/built-in.o(.text+0x75c): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_sedlbauer() WARNING: drivers/isdn/hisax/built-in.o(.text+0x763): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_netjet_s() WARNING: drivers/isdn/hisax/built-in.o(.text+0x76a): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_hfcpci() WARNING: drivers/isdn/hisax/built-in.o(.text+0x771): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_hfcsx() WARNING: drivers/isdn/hisax/built-in.o(.text+0x778): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_niccy() WARNING: drivers/isdn/hisax/built-in.o(.text+0x77f): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_bkm_a4t() WARNING: drivers/isdn/hisax/built-in.o(.text+0x786): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_sct_quadro() WARNING: drivers/isdn/hisax/built-in.o(.text+0x78d): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_gazel() WARNING: drivers/isdn/hisax/built-in.o(.text+0x794): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_w6692() WARNING: drivers/isdn/hisax/built-in.o(.text+0x79b): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_netjet_u() WARNING: drivers/isdn/hisax/built-in.o(.text+0x7a2): Section mismatch in reference from the function hisax_cs_setup_card() to the function .devinit.text:setup_enternow_pci() checkcard() are the only user of hisax_cs_setup_card(). And checkcard is only used during init or when hot plugging ISDN devices. So annotate hisax_cs_setup_card() with __devinit. checkcard() is used by exported functions so it cannot be annotated __devinit. Annotate it with __ref so modpost ignore references to _devinit section. Signed-off-by: Sam Ravnborg Acked-by: Karsten Keil Cc: Jeff Garzik Signed-off-by: David S. Miller commit d348c2a3c8ad0948592f9a1138170002497903e2 Author: Sam Ravnborg Date: Sat Feb 9 23:28:12 2008 -0800 isdn: fix section mismatch warnings in isac.c and isar.c Fix the following warnings: WARNING: drivers/isdn/hisax/built-in.o(.text+0x1b276): Section mismatch in reference from the function inithscxisac() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x1b286): Section mismatch in reference from the function inithscxisac() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x1fec7): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x21669): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x21671): Section mismatch in reference from the function AVM_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2991e): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x29936): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2993e): Section mismatch in reference from the function Sedl_card_msg() to the function .devinit.text:initisar() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2e026): Section mismatch in reference from the function NETjet_S_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x2e02e): Section mismatch in reference from the function NETjet_S_card_msg() to the function .devinit.text:initisac() WARNING: drivers/isdn/hisax/built-in.o(.text+0x37813): Section mismatch in reference from the function BKM_card_msg() to the function .devinit.text:clear_pending_isac_ints() WARNING: drivers/isdn/hisax/built-in.o(.text+0x37823): Section mismatch in reference from the function BKM_card_msg() to the function .devinit.text:initisac() initisar(), initisac() and clear_pending_isac_ints() were all used via a cardmsg fnction - which may be called ouside __devinit context. So remove the bogus __devinit annotation of the above three functions to fix the warnings. Signed-off-by: Sam Ravnborg Acked-by: Karsten Keil Cc: Jeff Garzik Signed-off-by: David S. Miller commit 7740ac6a7cf8158e828b4cbd4fc5226e53b5d9a2 Author: Sam Ravnborg Date: Sat Feb 9 23:27:41 2008 -0800 isdn: fix section mismatch warning in hfc_sx.c Fix the following warning: WARNING: drivers/isdn/hisax/built-in.o(.text+0x35818): Section mismatch in reference from the function hfcsx_card_msg() to the function .devinit.text:inithfcsx() hfcsx_card_msg() may be called outside __devinit context. Following the program logic is looks like the CARD_INIT branch will only be taken under __devinit context but to be consistent remove the __devinit annotation of inithfcsx() so we do not mix non-__devinit and __devinit code. Signed-off-by: Sam Ravnborg Acked-by: Karsten Keil Cc: Jeff Garzik Signed-off-by: David S. Miller commit 95a940e9e1d63c2bff170fcd59ab4e1b5c4c602d Author: S.Çağlar Onur Date: Sun Feb 10 05:27:23 2008 +0200 drivers/media/video/em28xx/: Fix undefined symbol error with CONFIG_SND=N Without this you get undefined symbol errors with CONFIG_SND=N: ERROR: "snd_pcm_period_elapsed" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_pcm_hw_constraint_integer" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_pcm_set_ops" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_pcm_lib_ioctl" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_card_new" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_card_free" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_card_register" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! ERROR: "snd_pcm_new" [drivers/media/video/em28xx/em28xx-alsa.ko] undefined! Signed-off-by: S.Çağlar Onur Signed-off-by: Linus Torvalds commit c1cb795338b17f12f3a966a74f199f640714a69d Author: S.Çağlar Onur Date: Sun Feb 10 05:19:03 2008 +0200 Update kernel/.gitignore with new auto-generated files Signed-off-by: S.Çağlar Onur Signed-off-by: Linus Torvalds commit 3b3563297341a7abd60566fce67c96a71e785200 Author: S.Çağlar Onur Date: Sun Feb 10 05:18:08 2008 +0200 Update arch/x86/boot/.gitignore with new auto-generated files Signed-off-by: S.Çağlar Onur Signed-off-by: Linus Torvalds commit 9820380a387b1135eace699270e795e3f51fc5dd Author: S.Çağlar Onur Date: Sun Feb 10 05:10:48 2008 +0200 rtc-r9701.c: silence compiler warning Commit 75b6102257874a4ea796af686de2f72cfa0452f9 ("rtc: add support for Epson RTC-9701JE V4") introduced the warning drivers/rtc/rtc-r9701.c: In function `r9701_get_datetime': drivers/rtc/rtc-r9701.c:74: warning: unused variable `time' Signed-off-by: S.Çağlar Onur Signed-off-by: Linus Torvalds commit 91a0736531c3c8a6ce49ac2a0dec0c83125936e1 Author: S.Çağlar Onur Date: Sun Feb 10 05:06:25 2008 +0200 x25_asy.c: silence compiler warning Commit 11b0cc3a4af65413ca3bb5698769e091486e0b22 ("x25_asy: Fix ref count rule violation") introduced the warning drivers/net/wan/x25_asy.c: In function `x25_asy_open_tty': drivers/net/wan/x25_asy.c:557: warning: unused variable `ld' Signed-off-by: S.Çağlar Onur Signed-off-by: Linus Torvalds commit 954415e33ed6cfa932c13e8c2460bd05e50723b5 Author: Stephen Hemminger Date: Sat Feb 9 23:26:53 2008 -0800 [PKT_SCHED] ematch: tcf_em_destroy robustness Make the code in tcf_em_tree_destroy more robust and cleaner: * Don't need to cast pointer to kfree() or avoid passing NULL. * After freeing the tree, clear the pointer to avoid possible problems from repeated free. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit ed7af3b3501c8c4e3667c89c2c43347bf29ae237 Author: Stephen Hemminger Date: Sat Feb 9 23:26:17 2008 -0800 [PKT_SCHED]: deinline functions in meta match A couple of functions in meta match don't need to be inline. Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit 8ff65b46031c47e476f70c5b82499b98e487a50c Author: Pavel Emelyanov Date: Sat Feb 9 23:24:58 2008 -0800 [SCTP]: Convert sctp_dbg_objcnt to seq files. This makes the code use a good proc API and the text ~50 bytes shorter. Signed-off-by: Pavel Emelyanov Acked-by: Vlad Yasevich Signed-off-by: David S. Miller commit 3f5340a67e75c6e34abbeafda98c85bff236109d Author: Pavel Emelyanov Date: Sat Feb 9 23:23:44 2008 -0800 [SCTP]: Use snmp_fold_field instead of a homebrew analogue. SCPT already depends in INET, so this doesn't create additional dependencies. Signed-off-by: Pavel Emelyanov Acked-by: Vlad Yasevich Signed-off-by: David S. Miller commit cd557bc1c15cbd20fbea47a150e1c7e56834e627 Author: Denis V. Lunev Date: Sat Feb 9 23:22:26 2008 -0800 [IGMP]: Optimize kfree_skb in igmp_rcv. Merge error paths inside igmp_rcv. Signed-off-by: Denis V. Lunev Signed-off-by: David S. Miller commit bd2f747658b303d9b08d2c5bc815022d825a5e3c Author: Pavel Emelyanov Date: Sat Feb 9 23:20:06 2008 -0800 [KEY]: Convert net/pfkey to use seq files. The seq files API disposes the caller of the difficulty of checking file position, the length of data to produce and the size of provided buffer. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 61145aa1a12401ac71bcc450a58c773dd6e2bfb9 Author: Pavel Emelyanov Date: Sat Feb 9 23:19:14 2008 -0800 [KEY]: Clean up proc files creation a bit. Mainly this removes ifdef-s from inside the ipsec_pfkey_init. Signed-off-by: Pavel Emelyanov Signed-off-by: David S. Miller commit 0efeaa335ce494680d1884f267eed7642dee3ca8 Author: Andrew Morton Date: Sat Feb 9 23:17:51 2008 -0800 pppol2tp: fix printk warnings drivers/net/pppol2tp.c: In function `pppol2tp_seq_tunnel_show': drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 4) drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 5) drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 6) drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 7) drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 8) drivers/net/pppol2tp.c:2295: warning: long long unsigned int format, __u64 arg (arg 9) drivers/net/pppol2tp.c: In function `pppol2tp_seq_session_show': drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 5) drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 6) drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 7) drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 8) drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 9) drivers/net/pppol2tp.c:2328: warning: long long unsigned int format, __u64 arg (arg 10) Not all platforms implement u64 with unsigned long long. eg: powerpc. Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit fefa864530766d8da2b8606235387c5173fb2309 Author: Andrew Morton Date: Sat Feb 9 23:17:15 2008 -0800 bnx2: section fix gcc-3.4.4 on powerpc: drivers/net/bnx2.c:67: error: version causes a section type conflict Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit 53a10565be7e4e6bdac65c81630bb048d679999e Author: Andrew Morton Date: Sat Feb 9 23:16:41 2008 -0800 bnx2x: section fix From: Andrew Morton gcc-3.4.4 on powerpc: drivers/net/bnx2x.c:73: error: version causes a section type conflict Cc: Jeff Garzik Cc: Sam Ravnborg Signed-off-by: Andrew Morton Signed-off-by: David S. Miller commit e88bb41595ad67a8e7d5dd8c7bbeea2e66cc0cac Author: David S. Miller Date: Sat Feb 9 23:08:53 2008 -0800 [SPARC]: Add solaris/sunos binary support to feature removal schedule. Signed-off-by: David S. Miller commit 344e53f562e21ab14734a482042713555a628d39 Author: David S. Miller Date: Sat Feb 9 22:25:50 2008 -0800 [SPARC]: Merge asm-sparc{,64}/a.out.h Signed-off-by: David S. Miller commit 469108ff3dcbc00313699d620c47f3ee1e7d19c6 Author: Theodore Tso Date: Sun Feb 10 01:11:44 2008 -0500 ext4: Add new "development flag" to the ext4 filesystem This flag is simply a generic "this is a crash/burn test filesystem" marker. If it is set, then filesystem code which is "in development" will be allowed to mount the filesystem. Filesystem code which is not considered ready for prime-time will check for this flag, and if it is not set, it will refuse to touch the filesystem. As we start rolling ext4 out to distro's like Fedora, et. al, this makes it less likely that a user might accidentally start using ext4 on a production filesystem; a bad thing, since that will essentially make it be unfsckable until e2fsprogs catches up. Signed-off-by: Theodore Tso Signed-off-by: Mingming Cao commit 26346ff681cb42c1436ed09c44dcae4809470dab Author: Aneesh Kumar K.V Date: Sun Feb 10 01:10:04 2008 -0500 ext4: Don't panic in case of corrupt bitmap Multiblock allocator calls BUG_ON in many case if the free and used blocks count obtained looking at the bitmap is different from what the allocator internally accounted for. Use ext4_error in such case and don't panic the system. Signed-off-by: Aneesh Kumar K.V Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit 256bdb497c6f562462f1e89fc8e1409f61ef40cb Author: Eric Sandeen Date: Sun Feb 10 01:13:33 2008 -0500 ext4: allocate struct ext4_allocation_context from a kmem cache struct ext4_allocation_context is rather large, and this bloats the stack of many functions which use it. Allocating it from a named slab cache will alleviate this. For example, with this change (on top of the noinline patch sent earlier): -ext4_mb_new_blocks 200 +ext4_mb_new_blocks 40 -ext4_mb_free_blocks 344 +ext4_mb_free_blocks 168 -ext4_mb_release_inode_pa 216 +ext4_mb_release_inode_pa 40 -ext4_mb_release_group_pa 192 +ext4_mb_release_group_pa 24 Most of these stack-allocated structs are actually used only for mballoc history; and in those cases often a smaller struct would do. So changing that may be another way around it, at least for those functions, if preferred. For now, in those cases where the ac is only for history, an allocation failure simply skips the history recording, and does not cause any other failures. Signed-off-by: Eric Sandeen Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit c4e35e07af162ea4d642b1c6ffacbb63c3ed1804 Author: Dave Kleikamp Date: Sun Feb 10 01:09:32 2008 -0500 JBD2: Clear buffer_ordered flag for barried IO request on success In JBD2 jbd2_journal_write_commit_record(), clear the buffer_ordered flag for the bh after barried IO has succeed. This prevents later, if the same buffer head were submitted to the underlying device, which has been reconfigured to not support barrier request, the JBD2 commit code could treat it as a normal IO (without barrier). This is a port from JBD/ext3 fix from Neil Brown. More details from Neil: Some devices - notably dm and md - can change their behaviour in response to BIO_RW_BARRIER requests. They might start out accepting such requests but on reconfiguration, they find out that they cannot any more. JBD2 deal with this by always testing if BIO_RW_BARRIER requests fail with EOPNOTSUPP, and retrying the write requests without the barrier (probably after waiting for any pending writes to complete). However there is a bug in the handling this in JBD2 for ext4 . When ext4/JBD2 to submit a BIO_RW_BARRIER request, it sets the buffer_ordered flag on the buffer head. If the request completes successfully, the flag STAYS SET. Other code might then write the same buffer_head after the device has been reconfigured to not accept barriers. This write will then fail, but the "other code" is not ready to handle EOPNOTSUPP errors and the error will be treated as fatal. Cc: Neil Brown Signed-off-by: Dave Kleikamp Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit 7fb5409df092589b86cc9412d926879cb572b7f0 Author: Jan Kara Date: Sun Feb 10 01:08:38 2008 -0500 ext4: Fix Direct I/O locking We cannot start transaction in ext4_direct_IO() and just let it last during the whole write because dio_get_page() acquires mmap_sem which ranks above transaction start (e.g. because we have dependency chain mmap_sem->PageLock->journal_start, or because we update atime while holding mmap_sem) and thus deadlocks could happen. We solve the problem by starting a transaction separately for each ext4_get_block() call. We *could* have a problem that we allocate a block and before its data are written out the machine crashes and thus we expose stale data. But that does not happen because for hole-filling generic code falls back to buffered writes and for file extension, we add inode to orphan list and thus in case of crash, journal replay will truncate inode back to the original size. Signed-off-by: Jan Kara Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit 8009f9fb3067fef6c2ca0c16f6bac786ae28639d Author: Aneesh Kumar K.V Date: Sun Feb 10 01:20:05 2008 -0500 ext4: Fix circular locking dependency with migrate and rm. In order to prevent a circular locking dependency when an unlink operation is racing with an ext4 migration, we delay taking i_data_sem until just before switch the inode format, and use i_mutex to prevent writes and truncates during the first part of the migration operation. Acked-by: Jan Kara Signed-off-by: Aneesh Kumar K.V Signed-off-by: Mingming Cao Signed-off-by: "Theodore Ts'o" commit 2ffd6e182c4b9ae7bebc385c021e7d083bab406a Author: Jan Engelhardt Date: Tue Jan 22 20:41:07 2008 +0100 [ARM] constify function pointer tables Signed-off-by: Jan Engelhardt Signed-off-by: Russell King commit 72e7ae8141fa98084383e167b77d4497a59e3e10 Author: David Brownell Date: Wed Feb 6 22:03:42 2008 +0100 [ARM] 4823/1: AT91 section fix Fix section warning: WARNING: arch/arm/mach-at91/built-in.o(.text+0xd74): Section mismatch in reference from the function init_programmable_clock() to the function .init.text:at91_css_to_clk() The function init_programmable_clock() references the function __init at91_css_to_clk(). This is often because init_programmable_clock lacks a __init annotation or the annotation of at91_css_to_clk is wrong. In this case the only calls to and from init_programmable_clock() are from code marked as "__init", so this fix is trivially correct. Signed-off-by: David Brownell Acked-by: Uwe Kleine-Knig Signed-off-by: Russell King commit 86260f987319fb526e920fbe317933e5b3a0691e Author: Dmitry Krivoschekov Date: Fri Feb 8 15:02:03 2008 +0100 [ARM] 4824/1: pxa: clear RDH bit after any reset According to PXA300/310 and PXA320 Developer manuals, the ASCR[RDH] "bit needs to be cleared as part of the software initialization coming out of any reset and coming out of D3". The latter requirement is addressed by commit "c4d1fb627ff3072", as for the former (coming out of any reset), the kernel relies on boot loaders and assumes that RDH bit is cleared there. Though, not all bootloaders follow the rule so we have to clear the bit in kernel. We clear the RDH bit in pxa3xx_init() function since it is always invoked after any reset. We also preserve D1S, D2S and D3S bits from being cleared in case we invoke pxa3xx_init() function not from normal hardware reset (e.g. kexec scenario), so these bits can be properly referenced later. Signed-off-by: Dmitry Krivoschekov Signed-off-by: Russell King commit fac84939609a683503947f41eb93e1917d026263 Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: cpa, strict range check in try_preserve_large_page() Right now, we check only the first 4k page for static required protections. This does not take overlapping regions into account. So we might end up setting the wrong permissions/protections for other parts of this large page. This can be optimized further, but correctness is the important part. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit b1d95f4e41d6a5969e3a847ceeae8379f30c84c3 Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: cpa, enable CONFIG_DEBUG_PAGEALLOC on 64-bit Now, that the page pool is in place we can enable DEBUG_PAGEALLOC on 64bit. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit eb5b5f024c40f02e9b0f3801173769a726f170fb Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: cpa, use page pool Switch the split page code to use the page pool. We do this unconditionally to avoid different behaviour with and without DEBUG_PAGEALLOC enabled. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 76ebd0548df6ee48586e9b80d8fc2f58aa5fb51c Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: introduce page pool in cpa DEBUG_PAGEALLOC was not possible on 64-bit due to its early-bootup hardcoded reliance on PSE pages, and the unrobustness of the runtime splitup of large pages. The splitup ended in recursive calls to alloc_pages() when a page for a pte split was requested. Avoid the recursion with a preallocated page pool, which is used to split up large mappings and gets refilled in the return path of kernel_map_pages after the split has been done. The size of the page pool is adjusted to the available memory. This part just implements the page pool and the initialization w/o using it yet. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit a03c2a48e02aacaaea211c94691b729be357e047 Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: DEBUG_PAGEALLOC: enable after mem_init() DEBUG_PAGEALLOC must not be enabled before mem_init(). Before this point there is nothing to allocate. Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 166124fde978b5a6c4412fb295c7f39711beb1b0 Author: Ingo Molnar Date: Sat Feb 9 23:24:09 2008 +0100 brk: help text typo fix Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 31f4b46ec6f889533c06537dea96bb0d20fa625b Author: Ahmed S. Darwish Date: Sat Feb 9 23:24:09 2008 +0100 lguest: accept guest _PAGE_PWT page table entries Beginning from commit 4138cc3418f5, ioremap_nocache() sets the _PAGE_PWT flag. Lguest doesn't accept a guest pte with a _PWT flag and reports a "bad page table entry" in that case. Accept guest _PAGE_PWT page table entries. Signed-off-by: Ahmed S. Darwish Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 261f0ce5ccdd17dc240d8453ca5ffc4688b92700 Author: Rafael J. Wysocki Date: Sat Feb 9 23:24:09 2008 +0100 x86 PM: update stale comments In some suspend and hibernation files in arch/x86/power there are comments referring to arch/x86-64 and arch/i386 . Update them to reflect the current code layout. Signed-off-by: Rafael J. Wysocki Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit ef8b03fabfbab0738dacbb6c0c38d5af91759ca1 Author: Rafael J. Wysocki Date: Sat Feb 9 23:24:09 2008 +0100 x86 PM: consolidate suspend and hibernation code Move the hibernation-specific code from arch/x86/power/suspend_64.c to a separate file (hibernate_64.c) and the CPU-handling code to cpu_64.c (in line with the corresponding 32-bit code). Simplify arch/x86/power/Makefile . Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit c57591244a08bb441c83472f5c110151bb7c2cc6 Author: Rafael J. Wysocki Date: Sat Feb 9 23:24:09 2008 +0100 x86 PM: rename 32-bit files in arch/x86/power Rename cpu.c, suspend.c and swsusp.S in arch/x86/power to cpu_32.c, hibernate_32.c and hibernate_asm_32.S, respectively, and update the purpose and copyright information in these files. Update the Makefile in arch/x86/power to reflect the above changes. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit cf7700fe24301df2c8d3636cf40784651c098207 Author: Rafael J. Wysocki Date: Sat Feb 9 23:24:09 2008 +0100 x86 PM: move 64-bit hibernation files to arch/x86/power Move arch/x86/kernel/suspend_64.c to arch/x86/power . Move arch/x86/kernel/suspend_asm_64.S to arch/x86/power as hibernate_asm_64.S . Update purpose and copyright information in arch/x86/power/suspend_64.c and arch/x86/power/hibernate_asm_64.S . Update the Makefiles in arch/x86, arch/x86/kernel and arch/x86/power to reflect the above changes. Signed-off-by: Rafael J. Wysocki Acked-by: Pavel Machek Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 9b706aee7d92d6ac3002547aea12e3eaa0a750ae Author: Denys Vlasenko Date: Sat Feb 9 23:24:09 2008 +0100 x86: trivial printk optimizations In arch/x86/boot/printf.c gets rid of unused tail of digits: const char *digits = "0123456789abcdefghijklmnopqrstuvwxyz"; (we are using 0-9a-f only) Uses smaller/faster lowercasing (by ORing with 0x20) if we know that we work on numbers/digits. Makes strtoul smaller, and also we are getting rid of static const char small_digits[] = "0123456789abcdefx"; static const char large_digits[] = "0123456789ABCDEFX"; since this works equally well: static const char digits[16] = "0123456789ABCDEF"; Size savings: $ size vmlinux.org vmlinux text data bss dec hex filename 877320 112252 90112 1079684 107984 vmlinux.org 877048 112252 90112 1079412 107874 vmlinux It may be also a tiny bit faster because code has less branches now, but I doubt it is measurable. [ hugh@veritas.com: uppercase pointers fix ] Signed-off-by: Denys Vlasenko Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit b6fbb669c8ef3a112121697ca901c290ccd35eb2 Author: Ian Campbell Date: Sat Feb 9 23:24:09 2008 +0100 x86: fix early_ioremap pagetable ops Some important parts of f6df72e71eba621b2f5c49b3a763116fac748f6e got dropped along the way, reintroduce them. Only affects paravirt guests. Signed-off-by: Ian Campbell Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 551889a6e2a24a9c06fd453ea03b57b7746ffdc0 Author: Ian Campbell Date: Sat Feb 9 23:24:09 2008 +0100 x86: construct 32-bit boot time page tables in native format. Specifically the boot time page tables in a CONFIG_X86_PAE=y enabled kernel are in PAE format. early_ioremap is updated to use the standard page table accessors. Clear any mappings beyond max_low_pfn from the boot page tables in native_pagetable_setup_start because the initial mappings can extend beyond the range of physical memory and into the vmalloc area. Derived from patches by Eric Biederman and H. Peter Anvin. [ jeremy@goop.org: PAE swapper_pg_dir needs to be page-sized fix ] Signed-off-by: Ian Campbell Cc: H. Peter Anvin Cc: Eric W. Biederman Cc: Andi Kleen Cc: Mika Penttilä Cc: Jeremy Fitzhardinge Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 185c045c245f46485ad8bbd8cc1100e986ff3f13 Author: Harvey Harrison Date: Sat Feb 9 23:24:09 2008 +0100 x86, core: remove CONFIG_FORCED_INLINING Other than the defconfigs, remove the entry in compiler-gcc4.h, Kconfig.debug and feature-removal-schedule.txt. Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit bfc734b24671b2639218ae2ef53af91dfd30b6c9 Author: Thomas Gleixner Date: Sat Feb 9 23:24:09 2008 +0100 x86: avoid unused variable warning in mm/init_64.c Signed-off-by: Thomas Gleixner Signed-off-by: Ingo Molnar commit 3701d863b43d05ffeb223d269583398f914fb5d3 Author: Ingo Molnar Date: Sat Feb 9 23:24:08 2008 +0100 x86: fixup more paravirt fallout Use a common irq_return entry point for all the iret places, which need the paravirt INTERRUPT return wrapper. Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 1ec7fd50ba4f845d1cf6b67acabd774577ef13b6 Author: Jiri Kosina Date: Sat Feb 9 23:24:08 2008 +0100 brk: document randomize_va_space and CONFIG_COMPAT_BRK (was Re: Document randomize_va_space and CONFIG_COMPAT_BRK. Signed-off-by: Jiri Kosina Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 6697c05296fab4d113c7144459b72b6172b485a5 Author: Harvey Harrison Date: Sat Feb 9 23:24:08 2008 +0100 x86: fix sparse warnings in acpi/bus.c Add function definition and extern variables to asm-x86/acpi.h. All of these are used in bus.c in ifdef(CONFIG_X86) sections, so are only added to the x86 include headers. boot.c already includes acpi.h so no changes are needed there. Fixes the following: arch/x86/kernel/acpi/boot.c:83:4: warning: symbol 'acpi_sci_flags' was not declared. Should it be static? arch/x86/kernel/acpi/boot.c:84:5: warning: symbol 'acpi_sci_override_gsi' was not declared. Should it be static? arch/x86/kernel/acpi/boot.c:421:13: warning: symbol 'acpi_pic_sci_set_trigger' was not declared. Should it be static? Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 9583d050d5b7bad76423b2bd667b174a122067a7 Author: Harvey Harrison Date: Sat Feb 9 23:24:08 2008 +0100 x86: fix sparse warning in topology.c arch/x86/kernel/topology.c:56:2: warning: returning void-valued expression Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit da7bfc50f5cb54aeee8147dca0c1de9d487cb5e0 Author: Harvey Harrison Date: Sat Feb 9 23:24:08 2008 +0100 x86: sparse warnings in pageattr.c Adjust the definition of lookup_address to take an unsigned long level argument. Adjust callers in xen/mmu.c that pass in a dummy variable. Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 7c36752a6be84892afb085c67fd4209e686db482 Author: Harvey Harrison Date: Sat Feb 9 23:24:08 2008 +0100 x86: sparse warning in therm_throt.c arch/x86/kernel/cpu/mcheck/therm_throt.c:121:2: warning: returning void-valued expression Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 88a5ac89667d22e1471ba1f45ea635df1f7da06f Author: Harvey Harrison Date: Sat Feb 9 23:24:08 2008 +0100 x86: fix sparse warning in xen/time.c Use xen_khz to denote xen_specific clock speed. Avoid shadowing cpu_khz. arch/x86/xen/time.c:220:6: warning: symbol 'cpu_khz' shadows an earlier one include/asm/tsc.h:17:21: originally declared here Signed-off-by: Harvey Harrison Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 3406c158ba8e83defb178e867919e24e110a59bf Author: Arnd Hannemann Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: fix typo in printk in mfgpt_timer_setup Signed-off-by: Arnd Hannemann Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit dcee77be2f0a7010633fb2c025db38550c4b0e72 Author: Jordan Crouse Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: make sure the right MFGPT timer fired the timer tick Each AMD Geode MFGPT timer interrupt output is paired with another timer; esentially the interrupt goes if either timer fires. This is okay, but the handlers need to be aware of this. Make sure in the timer tick handler that our timer really did expire. Signed-off-by: Jordan Crouse Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit f54ae69bafa16434ce46bc2f1fe556bce4d23650 Author: Andres Salomon Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: fix a potential race when disabling a timer We *really* don't want to be reading MFGPTx_SETUP and writing back those values. What we want to be doing is clearing CMP1 and CMP2 unconditionally; otherwise, we have races where CMP1 and/or CMP2 fire after we've read MFGPTx_SETUP. They can also fire between when we've written ~CNTEN to the register, and when the new register values get copied to the timer's version of the register. By clearing both fields, we're okay. Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit f087515c658a68454d43909d482ea4b59e7d6d5c Author: Jordan Crouse Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: Use "just-in-time" detection for the MFGPT timers There isn't much value to always detecting the MFGPT timers on Geode platforms; detection is only needed when something wants to use the timers. Move the detection code so that it gets called the first time a timer is allocated. Signed-off-by: Jordan Crouse Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit b0e6bf2571e9385335e6337bdedb85cb629ab3fb Author: Andres Salomon Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: make mfgpt_timer_setup available outside of mfgpt_32.c We need to be called from elsewhere, and this gets some #ifdefs out of the .c file. Signed-off-by: Andres Salomon Signed-off-by: Jordan Crouse Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 9501b2efd70ad3957a70d44de54dab7c52f9b882 Author: Andres Salomon Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: replace 'flags' field with 'avail' bit Drop F_AVAIL and the 'flags' field, replacing with an 'avail' bit. This looks more understandable to me. Signed-off-by: Andres Salomon Signed-off-by: Jordan Crouse Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit fa28e067c3b8af96c79c060e163b1387c172ae75 Author: Andres Salomon Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: drop module owner usage from MFGPT API We had planned to use the 'owner' field for allowing re-allocation of MFGPTs; however, doing it by module owner name isn't flexible enough. So, drop this for now. If it turns out that we need timers in modules, we'll need to come up with a scheme that matches the write-once fields of the MFGPTx_SETUP register, and drops ponies from the sky. Signed-off-by: Andres Salomon Signed-off-by: Jordan Crouse Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit 36445cf30686b9ea4ddf71f28057e4dd07db0e2d Author: Willy Tarreau Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE fix MFGPT input clock value The GEODE MFGPT code assumed that 32kHz was 32000 Hz while the boards run on a 32.768 kHz digital watch crystal. In practise, it will not change the timer's frequency as the skew was only 2.4%, but it should provide more accurate intervals. Signed-off-by: Willy Tarreau Signed-off-by: Andres Salomon Signed-off-by: Jordan Crouse Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit e78a77c38cf0ce3b8169ff6a6fd3711e81dc22c8 Author: Andres Salomon Date: Sat Feb 9 23:24:08 2008 +0100 x86: GEODE: MFGPT: Minor cleanups - uninline timer functions; the compiler knows better than we do whether or not to inline these. - mfgpt_start_timer() had an unused 'clock' argument, drop it. From both Jordan and myself. Signed-off-by: Jordan Crouse Signed-off-by: Andres Salomon Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner commit f13fd3cc9147801bdf56f5964c58c9838a74dd47 Author: Russell King Date: Thu Feb 7 20:17:53 2008 +0000 [ARM] pxa: remove debugging PM: printk Signed-off-by: Russell King commit baf8532a147d5b76681ce040e2c8f25a3f0e718d Author: Alex Dubov Date: Sat Feb 9 10:20:54 2008 -0800 memstick: initial commit for Sony MemoryStick support Sony MemoryStick cards are used in many products manufactured by Sony. They are available both as storage and as IO expansion cards. Currently, only MemoryStick Pro storage cards are supported via TI FlashMedia MemoryStick interface. [mboton@gmail.com: biuld fix] [akpm@linux-foundation.org: build fix] Signed-off-by: Alex Dubov Signed-off-by: Miguel Boton Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 941edd030b9725f9f85bd62dfdb68cde3a50fb66 Author: Martin Schwidefsky Date: Sat Feb 9 03:11:21 2008 -0800 m68knommu: add pgtable_t CC init/main.o In file included from include2/asm/uaccess.h:8, from include/linux/poll.h:13, from include/linux/rtc.h:113, from include/linux/efi.h:19, from linux-2.6/init/main.c:43: include/linux/mm.h:1151: error: expected declaration specifiers or '...' before 'pgtable_t' Signed-off-by: Martin Schwidefsky Reported-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 257ce734736118282afdeaac5112dbf5bb1949f9 Author: Martin Schwidefsky Date: Sat Feb 9 03:13:00 2008 -0800 Add pgtable_t to remaining nommu architectures The pte_fn_t in include/linux/mm.h make it necessary for all architectures to define a pgtable_t type, even those that do not have an mmu. Signed-off-by: Martin Schwidefsky Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 541645be8bbb67d39113096263dcf00615d789e3 Author: Pete Zaitcev Date: Sat Feb 9 00:10:17 2008 -0800 ub: fix up the conversion to sg_init_table() Signed-off-by: Pete Zaitcev Cc: "Oliver Pinter" Cc: FUJITA Tomonori Cc: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6a4c8bdb30370991905941ddf85d28dde7370b1 Author: Christoph Hellwig Date: Sat Feb 9 00:10:16 2008 -0800 fix up kerneldoc in fs/ioctl.c a little bit - remove non-standard in/out markers - use tabs for formatting Signed-off-by: Christoph Hellwig Cc: "Randy.Dunlap" Cc: Erez Zadok Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 60c12b1202a60eabb1c61317e5d2678fcea9893f Author: David Rientjes Date: Sat Feb 9 00:10:15 2008 -0800 memcontrol: add vm_match_cgroup() mm_cgroup() is exclusively used to test whether an mm's mem_cgroup pointer is pointing to a specific cgroup. Instead of returning the pointer, we can just do the test itself in a new macro: vm_match_cgroup(mm, cgroup) returns non-zero if the mm's mem_cgroup points to cgroup. Otherwise it returns zero. Signed-off-by: David Rientjes Cc: Balbir Singh Cc: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6966a97753854c8b5336cf3997d5d1d205d91b12 Author: Jiri Kosina Date: Sat Feb 9 00:10:14 2008 -0800 UML: fix hostfs build /home/bunk/linux/kernel-2.6/git/linux-2.6/fs/hostfs/hostfs_kern.c: In function 'hostfs_show_options': /home/bunk/linux/kernel-2.6/git/linux-2.6/fs/hostfs/hostfs_kern.c:328: error: dereferencing pointer to incomplete type We need to include mount.h to get vfsmount. Signed-off-by: Jiri Kosina Reported-by: Adrian Bunk Cc: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 880cdf3a8122288d37829ce01eadf8822bb386db Author: Matt Mackall Date: Sat Feb 9 00:10:12 2008 -0800 Fix compile error on nommu for is_swap_pte CC mm/vmscan.o In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/mm/vmscan.c:44: /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/swapops.h: In function 'is_swap_pte': /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/swapops.h:48: error: implicit declaration of function 'pte_none' /home/bunk/linux/kernel-2.6/git/linux-2.6/include/linux/swapops.h:48: error: implicit declaration of function 'pte_present' Does it ever make sense to ask "is this pte a swap entry?" on a machine with no MMU? Presumably this also means it has no ptes too, right? In which case, it's better to comment the whole function out. Then when someone tries to ask the above meaningless question, they get a compile error rather than a meaningless answer. Signed-off-by: Matt Mackall Cc: Mike Frysinger Reported-by: Adrian Bunk Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6252d702c5311ce916caf75ed82e5c8245171c92 Author: Martin Schwidefsky Date: Sat Feb 9 18:24:37 2008 +0100 [S390] dynamic page tables. Add support for different number of page table levels dependent on the highest address used for a process. This will cause a 31 bit process to use a two level page table instead of the four level page table that is the default after the pud has been introduced. Likewise a normal 64 bit process will use three levels instead of four. Only if a process runs out of the 4 tera bytes which can be addressed with a three level page table the fourth level is dynamically added. Then the process can use up to 8 peta byte. Signed-off-by: Martin Schwidefsky commit 5a216a20837c5f5fa1ca4b8ae8991ffd96b08e6f Author: Martin Schwidefsky Date: Sat Feb 9 18:24:36 2008 +0100 [S390] Add four level page tables for CONFIG_64BIT=y. Signed-off-by: Martin Schwidefsky commit 146e4b3c8b92071b18f0b2e6f47165bad4f9e825 Author: Martin Schwidefsky Date: Sat Feb 9 18:24:35 2008 +0100 [S390] 1K/2K page table pages. This patch implements 1K/2K page table pages for s390. Signed-off-by: Martin Schwidefsky commit 0c1f1dcd8c7792aeff6ef62e9508b0041928ab87 Author: Martin Schwidefsky Date: Sat Feb 9 18:24:34 2008 +0100 [S390] Remove a.out header file. Signed-off-by: Martin Schwidefsky commit 59eb1ca7a8906412478656ba79261036261f4b76 Author: Christian Borntraeger Date: Sat Feb 9 18:24:33 2008 +0100 [S390] sclp_vt220: Fix vt220 initialization There are two problems in the vt220 intialization: o Currently the vt220 console looses early printk events until the the vt220 tty is registered. o console should work if tty_register fails sclp_vt220_con_init calls __sclp_vt220_init and register_console. It does not register the driver with the sclp core code via sclp_register. That results in an sclp_send_mask=0. Therefore, __sclp_vt220_emit will reject buffers with EIO. Unfortunately register_console will cause the printk buffer to be sent to the console and, therefore, every early message gets dropped. The sclp_send_mask is set later during boot, when sclp_vt220_tty_init calls sclp_register. The solution is to move the sclp_register call from sclp_vt220_tty_init to __sclp_vt220_init. This makes sure that the console is properly registered with the sclp subsystem before the first log buffer messages are passed to the vt220 console. We also adopt the cleanup on error to keep the console alive if tty_register fails. Thanks to Peter Oberparleiter and Heiko Carstens for review and ideas for improvement. Signed-off-by: Christian Borntraeger Signed-off-by: Martin Schwidefsky commit bf3f837804997e5f5d9888051e9e5356961af0f2 Author: Ursula Braun Date: Sat Feb 9 18:24:32 2008 +0100 [S390] qdio: avoid hang when establishing qdio queues If qdio establish runs in parallel with a channel error, ccw_device_start_timeout may not trigger the qdio_timeout_handler. In this case neither QDIO_IRQ_STATE_ESTABLISHED nor QDIO_IRQ_STATE_ERR is reached and the following wait_event hangs forever. Solution: do not make use of the timeout option with ccw_device_start, but add a timeout to the following wait_event. Signed-off-by: Ursula Braun Signed-off-by: Martin Schwidefsky commit 522d8dc08b16deb51c128d544ab1cb9c621c950e Author: Martin Schwidefsky Date: Sat Feb 9 18:24:31 2008 +0100 [S390] VMEM_MAX_PHYS overflow on 31 bit. With the new space saving spinlock_t and a non-debug configuration the struct page only has 32 bytes for 31 bit s390. The causes an overflow in the calculation of VMEM_MAX_PHYS which renders the kernel unbootable. Signed-off-by: Martin Schwidefsky commit b90b34c6802865d07f482650eff82a4b38df6d79 Author: Felix Beck Date: Sat Feb 9 18:24:30 2008 +0100 [S390] zcrypt: Do not start ap poll thread per default Do not start ap poll thread per default to increase perfomance with z/VM. Signed-off-by: Felix Beck Signed-off-by: Martin Schwidefsky commit 6d88f827d7c3e73d11a62fdabccca001aece7295 Author: Martin Schwidefsky Date: Sat Feb 9 18:24:29 2008 +0100 [S390] Fix __ffs_word_loop/__ffz_word_loop inlnie assembly. The black art of inline assemblies.. The new __ffs_word_loop/ __ffz_word_loop inline assemblies need an early clobber for the two input/output variables. Signed-off-by: Martin Schwidefsky commit 1ee92a1c79b4a44586490a52132d105972374223 Author: Heiko Carstens Date: Sat Feb 9 18:24:28 2008 +0100 [S390] Wire up new timerfd syscalls. Signed-off-by: Heiko Carstens Signed-off-by: Martin Schwidefsky commit 4e5f24a8fa075c251a1ca762eaf210332266e60a Author: Martin Schwidefsky Date: Sat Feb 9 18:24:27 2008 +0100 [S390] Update default configuration. Signed-off-by: Martin Schwidefsky commit 9f747d6c4724dd3afa7d3525f6dd5300fc1633c5 Author: David S. Miller Date: Fri Nov 16 03:26:41 2007 -0800 [SPARC]: Merge asm-sparc{,64}/fb.h Signed-off-by: David S. Miller commit 3cfe17fdf192bc8f69305d56a09a4cbb1edc57b8 Author: David S. Miller Date: Fri Nov 16 03:24:23 2007 -0800 [SPARC]: Merge asm-sparc{,64}/errno.h Signed-off-by: David S. Miller commit f11fa82708df824612929d3290ce29d8b3c368fc Author: David S. Miller Date: Fri Nov 16 03:21:15 2007 -0800 [SPARC]: Merge asm-sparc{,64}/emergency-restart.h Signed-off-by: David S. Miller commit 4b9b77916fc11f03321079063a6fe2b3733559bb Author: David S. Miller Date: Fri Nov 16 03:16:00 2007 -0800 [SPARC]: Merge asm-sparc{,64}/div64.h Signed-off-by: David S. Miller commit 04c3ddf965ab46f7e24c2399dc85deca2f08ef5b Author: David S. Miller Date: Fri Nov 16 03:15:05 2007 -0800 [SPARC]: Merge asm-sparc{,64}/device.h Signed-off-by: David S. Miller commit ba89f59ab825d4c9dee652ce0ca53e033a05d5ec Author: David S. Miller Date: Fri Nov 16 03:12:56 2007 -0800 [SPARC]: Merge asm-sparc{,64}/current.h Signed-off-by: David S. Miller commit cec6dc5d732c649e5f477c21c93d99eb25edae1e Author: David S. Miller Date: Fri Nov 16 03:08:39 2007 -0800 [SPARC]: Merge asm-sparc{,64}/cputime.h Signed-off-by: David S. Miller commit d113fcd9cf807045e38998a60b4f4577c927c300 Author: David S. Miller Date: Fri Nov 16 03:06:07 2007 -0800 [SPARC]: Merge asm-sparc{,64}/cache.h Signed-off-by: David S. Miller commit f610bbc6accaacdf46501208178ff77c4422587a Author: David S. Miller Date: Fri Nov 16 02:59:58 2007 -0800 [SPARC]: Merge asm-sparc{,64}/byteorder.h Signed-off-by: David S. Miller commit 145dea009828df7b091e7f7f24497ceb12dbbb3d Author: David S. Miller Date: Fri Nov 16 02:57:01 2007 -0800 [SPARC]: Merge asm-sparc{,64}/bugs.h Signed-off-by: David S. Miller commit e10195c232d426b5e960038e10b0df8f75d86309 Author: David S. Miller Date: Fri Nov 16 02:53:50 2007 -0800 [SPARC]: Merge asm-sparc{,64}/bug.h Note that because of minimum compiler version enforcement in linux/compiler.h these days the check for sparc32 buggy __builtin_trap() can be safely removed. Signed-off-by: David S. Miller commit c79ca3f841aeb31aeadd6348f132780b6f658c22 Author: David S. Miller Date: Fri Nov 16 02:49:00 2007 -0800 [SPARC]: Kill BSD errno translation table and header files. Completely unused. Signed-off-by: David S. Miller commit ff99b923e6317f8b600620ffb936b13130266d99 Author: David S. Miller Date: Fri Nov 16 02:45:01 2007 -0800 [SPARC]: Merge asm-sparc{,64}/bpp.h Signed-off-by: David S. Miller commit 9ab8273606f1767c8ea900ac299cb42457b00323 Author: David S. Miller Date: Fri Nov 16 02:42:29 2007 -0800 [SPARC]: Merge include/asm-sparc{,64}/auxvec.h Signed-off-by: David S. Miller commit 75b2a0254da8f51c39593ab5841ba53766316730 Author: David S. Miller Date: Fri Nov 16 00:55:52 2007 -0800 [SPARC]: Merge include/asm-sparc{,64}/of_device.h Signed-off-by: David S. Miller commit 97b4872c8db766b37c9b75095e386da7c4eb967d Author: David S. Miller Date: Fri Nov 16 00:54:35 2007 -0800 [SPARC]: Merge include/asm-sparc{,64}/prom.h Signed-off-by: David S. Miller commit 7b98ac24ef7df87010000aa4b15a640c15a9eca5 Author: Stephen Rothwell Date: Thu Jan 17 01:18:43 2008 -0800 [SPARC]: Remove of_platform_device_create There are no callers of this on the Sparc platforms. Signed-off-by: Stephen Rothwell Signed-off-by: David S. Miller commit 268bcca1e7b0d244afd07ea89cda672e61b0fc4a Author: Stephen Hemminger Date: Sat Feb 9 03:47:19 2008 -0800 [PKT_SCHED] ematch: oops from uninitialized variable (resend) Setting up a meta match causes a kernel OOPS because of uninitialized elements in tree. [ 37.322381] BUG: unable to handle kernel NULL pointer dereference at 0000000000000000 [ 37.322381] IP: [] :em_meta:em_meta_destroy+0x17/0x80 [ 37.322381] Call Trace: [ 37.322381] [] tcf_em_tree_destroy+0x2d/0xa0 [ 37.322381] [] tcf_em_tree_validate+0x2dc/0x4a0 [ 37.322381] [] nla_parse+0x92/0xe0 [ 37.322381] [] :cls_basic:basic_change+0x202/0x3c0 [ 37.322381] [] kmem_cache_alloc+0x67/0xa0 [ 37.322381] [] tc_ctl_tfilter+0x3b1/0x580 [ 37.322381] [] rtnetlink_rcv_msg+0x0/0x260 [ 37.322381] [] netlink_rcv_skb+0x74/0xa0 [ 37.322381] [] rtnetlink_rcv+0x18/0x20 [ 37.322381] [] netlink_unicast+0x263/0x290 [ 37.322381] [] __alloc_skb+0x96/0x160 [ 37.322381] [] netlink_sendmsg+0x274/0x340 [ 37.322381] [] sock_sendmsg+0x12b/0x140 [ 37.322381] [] autoremove_wake_function+0x0/0x30 [ 37.322381] [] autoremove_wake_function+0x0/0x30 [ 37.322381] [] sock_sendmsg+0x12b/0x140 [ 37.322381] [] zone_statistics+0xb1/0xc0 [ 37.322381] [] sys_sendmsg+0x20e/0x360 [ 37.322381] [] sockfd_lookup_light+0x41/0x80 [ 37.322381] [] handle_mm_fault+0x3eb/0x7f0 [ 37.322381] [] system_call_after_swapgs+0x7b/0x80 Signed-off-by: Stephen Hemminger Signed-off-by: David S. Miller commit d38f1220666a2bd89c4f62d286723a3417b34b9e Author: David S. Miller Date: Sat Feb 9 03:40:55 2008 -0800 [SPARC64]: Add kretprobe support. Passes the smoke tests at least, powerpc implementation was used as a guide. Signed-off-by: David S. Miller commit 13fa14e185614066d96f90f09da08eebe58cbc8f Author: David S. Miller Date: Sat Feb 9 03:11:01 2008 -0800 [SPARC64]: Add SG merging support back into IOMMU code. Mimicks almost perfectly the powerpc IOMMU code, except that it doesn't have the IOMMU_PAGE_SIZE != PAGE_SIZE handling, and it also lacks the device dma mask support bits. I'll add that later as time permits, but this gets us at least back to where we were beforehand. Signed-off-by: David S. Miller commit d284142cbad66832d5072a0aebeca7bd9ca841b7 Author: David S. Miller Date: Fri Feb 8 18:05:46 2008 -0800 [SPARC64]: IOMMU allocations using iommu-helper layer. Signed-off-by: David S. Miller commit 19814ea24e9d80583504e336340ab4590841b0b1 Author: David S. Miller Date: Fri Feb 8 02:09:40 2008 -0800 [SPARC64]: iommu_common.h tidy ups... Add missing multiple-include guards and update copyright. Signed-off-by: David S. Miller commit 0507468a8055fc9a51b40a59e6b4eb6081f23aad Author: David S. Miller Date: Fri Feb 8 02:02:39 2008 -0800 [SPARC64]: Remove unused declarations from iommu_common.h Signed-off-by: David S. Miller commit ed2c9fa53b7a3e240a64e6e97494d72d0f80eed0 Author: Michal Sojka Date: Thu Feb 7 17:18:51 2008 +0100 Kbuild: Fix deb-pkg target to work with kernel versions ending with - If CONIFIG_LOCALVERSION is set for example to -loop, the following error message was generated. dpkg-deb - error: Debian revision (`loop') doesn't contain any digits dpkg-deb: 1 errors in control file The patch solves this by adding a numeric revision to package version. Signed-off-by: Michal Sojka Signed-off-by: Sam Ravnborg commit ec7748b59e214e2c6b7d21ca5f26a760fd6e142b Author: Sam Ravnborg Date: Sat Feb 9 10:46:40 2008 +0100 ide: introduce HAVE_IDE To allow flexible configuration of IDE introduce HAVE_IDE. All archs except arm, um and s390 unconditionally select it. For arm the actual configuration determine if IDE is supported. This is a step towards introducing drivers/Kconfig for arm. Signed-off-by: Sam Ravnborg Acked-by: Russell King - ARM Linux Acked-by: Bartlomiej Zolnierkiewicz commit d75f4c683f817ef61c9ae634886e7ebc3133c002 Author: Mike Frysinger Date: Fri Feb 8 00:05:52 2008 -0500 kbuild: silence CHK/UPD messages according to $(quiet) Signed-off-by: Mike Frysinger Signed-off-by: Sam Ravnborg commit a3eadd7cb00f39f6fd4bbaf414dfde547b8c0899 Author: Sam Ravnborg Date: Wed Feb 6 23:05:33 2008 +0100 scsi: fix makefile for aic7(3*x) Fix bug introduced by my latest fix to the aic7xxx Makefile. Test build on x86 32 and 64 bit. Without and with -j (parallel build) Building firmaware is br0ken with O=... but this is unrelated to this bug-fix. Tested-by: Adrian Bunk Cc: James Bottomley Signed-off-by: Sam Ravnborg commit 7c0ac495e30b2b9becb79be2ff87642ed8ad8f0c Author: Geert Uytterhoeven Date: Tue Feb 5 11:38:49 2008 +0100 kbuild/modpost: Use warn() for announcing section mismatches modpost: Use warn() for announcing section mismatches, for easy grepping for warnings in build logs. Also change an existing call from fprintf() to warn() while we're at it. Signed-off-by: Geert Uytterhoeven Signed-off-by: Sam Ravnborg commit ff739b611f41a93338855c064959404f3b7c9bab Author: Uwe Kleine-König Date: Tue Feb 5 11:44:52 2008 +0100 Add binoffset to gitignore Signed-off-by: Uwe Kleine-König Signed-off-by: Sam Ravnborg commit f666751a0ab1d1671855da7e98889256b9a5b1bb Author: Sam Ravnborg Date: Wed Feb 6 21:51:18 2008 +0100 kbuild/modpost: improve warnings if symbol is unknown If we cannot determine the symbol then print (unknown) to hint the reader that we failed to find the symbol. This happens with REL relocation records in arm object files. Signed-off-by: Sam Ravnborg commit 249d621a85668b3b09296fbcfcf1cb5e9372a5ea Author: Len Brown Date: Sat Feb 9 04:32:40 2008 -0500 Merge branches 'release' and 'buildfix' into release commit 16111c797990f4fab571f6e982390cb842d16bf0 Author: Carlos Corbacho Date: Sat Feb 9 01:32:25 2008 +0000 acer-wmi - Add documentation Add some initial documentation detailing what acer-wmi is, and how to use it. Update the Kconfig entry with a reference to the documentation. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap Signed-off-by: Len Brown commit 018a651a9c4e3fba623b735593fb39869a69c2f7 Author: Carlos Corbacho Date: Sat Feb 9 01:32:19 2008 +0000 sonypi - Move sonypi.txt to Documentation/laptops Also update references to sonypi.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Mattia Dongili Signed-off-by: Len Brown commit f04b7c402ba587a299e62907a457013914dec477 Author: Carlos Corbacho Date: Sat Feb 9 01:32:14 2008 +0000 sony-laptop - Move sony-laptop.txt to Documentation/laptops Also update references to sony-laptop.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Mattia Dongili Signed-off-by: Len Brown commit f191dc6b55cf92eb8e1f48b41533ecf4d6161569 Author: Carlos Corbacho Date: Sat Feb 9 01:32:09 2008 +0000 thinkpad-acpi - Move thinkpad-acpi.txt to Documentation/laptops Also update references to thinkpad-acpi.txt in Kconfig. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Henrique de Moraes Holschuh Signed-off-by: Len Brown commit d6ff3655773a1810b15da942c40478bf5217e390 Author: Carlos Corbacho Date: Sat Feb 9 01:32:03 2008 +0000 Documentation - Create laptops sub-directory There are currently various laptop drivers floating about with no central place for their documentation, which is currently scattered around the top level Documentation/ directory. So, as a first step, lets create a Documentation sub-directory, and update the relevant index files. The work of then moving the existing laptop driver related documentation will then be handled later. Signed-off-by: Carlos Corbacho Signed-off-by: Randy Dunlap CC: Henrique de Moraes Holschuh CC: Mattia Dongili Signed-off-by: Len Brown commit a0dd25b2c83de4623487ca4de9c1d962b552ca0f Author: Len Brown Date: Sat Feb 9 04:01:48 2008 -0500 ACPI: thermal: buildfix for CONFIG_THERMAL=n This fixes the build, but acpi_fan_add() still needs to be updated to handle thermal_cooling_device_register() returning NULL as a non-fatal condition. Signed-off-by: Len Brown commit a6869cc4cfd633d909918f1489a6a8ac668cd6aa Author: Venki Pallipadi Date: Fri Feb 8 17:05:44 2008 -0800 cpuidle: build fix for non-x86 The last posted version of this patch gave compile error on IA64. So, here goes yet another rewrite of the patch. Convert cpu_idle_wait() to cpuidle_kick_cpus() which is SMP-only, and gives error on non supported CPU. Changes from last patch sent by Kevin: Moved the definition of kick_cpus back to cpuidle.c from cpuidle.h: * Having it in .h gives #error on archs which includes the header file without actually having CPU_IDLE configured. To make it work in .h, we need one more #ifdef around that code which makes it messy. * Also, the function is only called from one file. So, it can be in declared statically in .c rather than making it available to everyone who includes the .h file. Signed-off-by: Venkatesh Pallipadi Signed-off-by: Kevin Hilman Signed-off-by: Len Brown commit 4609d029aa8a2c7e0ad71e329c6e3493e1e95040 Author: Carlos Corbacho Date: Fri Feb 8 23:51:49 2008 +0000 acer-wmi: Fix backlight on AMW0 (V1) laptops There is some leftover cruft from the old quirk infrastructure that causes us to be unable to set the backlight on older laptops. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit b01368291926b30abc702dee35c688408b54d422 Author: Carlos Corbacho Date: Fri Feb 8 23:51:43 2008 +0000 tc1100-wmi: Mark as experimental tc1100-wmi has not undergone as much testing as acer-wmi, so it certainly should be marked as experimental as well until we get more user feedback. Signed-off-by: Carlos Corbacho Signed-off-by: Len Brown commit bbafbecb24190959d77a8fee7bd23798b81e25c2 Author: Alexey Starikovskiy Date: Sat Feb 9 03:22:13 2008 -0500 ACPI: SBS: Host controller must initialize before SBS. In static case sbshc must be compiled ahead of sbs, so that hc is configured first. http://bugzilla.kernel.org/show_bug.cgi?id=9910 Signed-off-by: Alexey Starikovskiy Signed-off-by: Len Brown commit 641f43669fa28ca795ac4e9b3ec78643a007ee20 Author: Mart Raudsepp Date: Sat Feb 9 08:16:36 2008 +0000 [MTD] [NAND] cs553x_nand: command line partitioning support Implements kernel command line partitioning support for the CS5535/CS5536 chipsets driver. For that the following is done: * cs553x_cleanup(): try the cleanup for all chip selects to not leak memory * Assign a unique name for each chip select to be separately addressable in the command line mtd-id portion(s) * Use the already defined PIN_OPT_IDE constant where appropriate for readability * Include command line partitioning support when CONFIG_MTD_PARTS is set Signed-off-by: Mart Raudsepp Signed-off-by: David Woodhouse commit b1d0e4f535e10775cffde922208b49629169aeaa Author: Nick Piggin Date: Sat Feb 9 01:15:19 2008 +0100 mm: special mapping nopage Convert special mapping install from nopage to fault. Because the "vm_file" is NULL for the special mapping, the generic VM code has messed up "vm_pgoff" thinking that it's an anonymous mapping and the offset does't matter. For that reason, we need to undo the vm_pgoff offset that got added into vmf->pgoff. [ We _really_ should clean that up - either by making this whole special mapping code just use a real file entry rather than that ugly array of "struct page" pointers, or by just making the VM code realize that even if vm_file is NULL it may not be a regular anonymous mmap. - Linus ] Signed-off-by: Nick Piggin Cc: linux-mm@kvack.org Cc: linux-kernel@vger.kernel.org Signed-off-by: Linus Torvalds commit 3bf8f5a92cd4b04e3f1e162a1b4b99759a882b5d Author: Ingo Molnar Date: Sat Feb 9 00:15:06 2008 +0100 x86: fix pgtable_t build breakage Commit 2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4 ("CONFIG_HIGHPTE vs. sub-page page tables") caused some build breakage due to pgtable_t only getting declared in the CONFIG_X86_PAE case. Move the declaration outside the PAE section. Signed-off-by: Ingo Molnar Signed-off-by: Linus Torvalds commit 765cdb6cef63c0b41c3f6c9285769080b3f41bb0 Author: Kay Sievers Date: Fri Feb 8 15:00:49 2008 -0800 DCA: convert struct class_device to struct device. Thanks to Kay for keeping us honest. Signed-off-by: Kay Sievers Signed-off-by: Shannon Nelson Cc: "Williams, Dan J" Acked-by: Greg KH Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11b0cc3a4af65413ca3bb5698769e091486e0b22 Author: Alan Cox Date: Fri Feb 8 15:00:48 2008 -0800 x25_asy: Fix ref count rule violation x25_asy does not take an ldisc reference before calling the flush method. Fix it to use the helper function we provide. Signed-off-by: Alan Cox Cc: Krzysztof Halasa Cc: "David S. Miller" Cc: Jeff Garzik Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 4600ecfcf3ad160ac0c6fcff6115f6edb081ccfa Author: Guennadi Liakhovetski Date: Fri Feb 8 15:00:47 2008 -0800 lib/scatterlist.o needed by a module only - link it in unconditionally lib/scatterlist.c is needed by drivers/media/video/videobuf-dma-sg.c, and we would like to be able to use the latter without PCI too, for example, on PXA270 ARM CPU. It is then possible to create a configuration with CONFIG_BLOCK=n, where only module code will need scatterlist.c. Therefore it must be in obj-y. Signed-off-by: Guennadi Liakhovetski Acked-by: Jens Axboe Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 3a984a85050e320993f87ba47a22973f32853206 Author: Adrian Bunk Date: Fri Feb 8 15:00:46 2008 -0800 fix xtensa timerfd breakage In file included from /home/bunk/linux/kernel-2.6/git/linux-2.6/arch/xtensa/kernel/syscall.c:39: include2/asm/unistd.h:681: error: 'sys_timerfd' undeclared here (not in a function) Signed-off-by: Adrian Bunk Cc: Christian Zankel Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 6784fd5931a58559673f500a333030ceaadb69bb Author: Mathieu Desnoyers Date: Fri Feb 8 15:00:45 2008 -0800 Fix FRV cmpxchg_local Fix the FRV cmpxchg_local by breaking the following header dependency loop : linux/kernel.h -> linux/bitops.h -> asm-frv/bitops.h -> asm-frv/atomic.h -> asm-frv/system.h -> asm-generic/cmpxchg_local.h -> typecheck() defined in linux/kernel.h and linux/kernel.h -> linux/bitops.h -> asm-frv/bitops.h -> asm-frv/atomic.h -> asm-generic/cmpxchg_local.h -> typecheck() defined in linux/kernel.h In order to fix this : - Move the atomic_test_and_ *_mask inlines from asm-frv/atomic.h (why are they there at all anyway ? They are not touching atomic_t variables!) to asm-frv/bitops.h. Also fix a build issue with cmpxchg : it does not cast to (unsigned long *) like other architectures, to deal with it in the cmpxchg_local macro. FRV builds fine with this patch. Thanks to Adrian Bunk for spotting this bug. Signed-off-by: Mathieu Desnoyers Cc: Adrian Bunk Cc: David Howells Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b55fcb22d445a7460cbbc138ceae096d5617715a Author: Andrew Morton Date: Fri Feb 8 15:00:43 2008 -0800 revert "proc: fix the threaded proc self" Revert commit c6caeb7c4544608e8ae62731334661fc396c7f85 ("proc: fix the threaded /proc/self"), since Eric says "The patch really is wrong. There is at least one corner case in procps that cares." Cc: Eric W. Biederman Cc: Ingo Molnar Cc: "Guillaume Chazarain" Cc: "Pavel Emelyanov" Cc: "Rafael J. Wysocki" Cc: Oleg Nesterov Cc: Roland McGrath Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5128bdc97a1018aacac2550cf73bda61041cc3b8 Author: Roland Dreier Date: Fri Feb 8 14:47:26 2008 -0800 IB/core: Remove unused struct ib_device.flags member Avoid confusion about what it might mean, since it's never initialized. Signed-off-by: Roland Dreier commit e0605d9199b462454f2f2e5ca01810255a6d5cfa Author: Eli Cohen Date: Wed Jan 30 18:30:57 2008 +0200 IB/core: Add IP checksum offload support Add a device capability to show when it can handle checksum offload. Also add a send flag for inserting checksums and a csum_ok field to the completion record. Signed-off-by: Eli Cohen Signed-off-by: Roland Dreier commit 7143740d26098aca84ecc7376ccfe2c58fd0412e Author: Eli Cohen Date: Wed Jan 30 18:30:53 2008 +0200 IPoIB: Add send gather support This patch acts as a preparation for using checksum offload for IB devices capable of inserting/verifying checksum in IP packets. The patch does not actaully turn on NETIF_F_SG - we defer that to the patches adding checksum offload capabilities. We only add support for send gathers for datagram mode, since existing HW does not support checksum offload on connected QPs. Signed-off-by: Michael S. Tsirkin Signed-off-by: Eli Cohen Signed-off-by: Roland Dreier commit eb14032f9eb595621270f3269f40094adb3144e8 Author: Eli Cohen Date: Wed Jan 30 18:30:46 2008 +0200 IPoIB: Add high DMA feature flag All current InfiniBand devices can handle all DMA addresses, and it's hard to imagine anyone would be silly enough to build a new device that couldn't. Therefore, enable the NETIF_F_HIGHDMA feature for IPoIB. This has no effect for no, but is needed when we enable gather/scatter support and checksum stateless offloads. Signed-off-by: Eli Cohen Signed-off-by: Roland Dreier commit ea54b10c7773007e173da31fe7adcc049da33331 Author: Jack Morgenstein Date: Mon Jan 28 10:40:59 2008 +0200 IB/mlx4: Use multiple WQ blocks to post smaller send WQEs ConnectX HCA supports shrinking WQEs, so that a single work request can be made of multiple units of wqe_shift. This way, WRs can differ in size, and do not have to be a power of 2 in size, saving memory and speeding up send WR posting. Unfortunately, if we do this then the wqe_index field in CQEs can't be used to look up the WR ID anymore, so our implementation does this only if selective signaling is off. Further, on 32-bit platforms, we can't use vmap() to make the QP buffer virtually contigious. Thus we have to use constant-sized WRs to make sure a WR is always fully within a single page-sized chunk. Finally, we use WRs with the NOP opcode to avoid wrapping around the queue buffer in the middle of posting a WR, and we set the NoErrorCompletion bit to avoid getting completions with error for NOP WRs. However, NEC is only supported starting with firmware 2.2.232, so we use constant-sized WRs for older firmware. And, since MLX QPs only support SEND, we use constant-sized WRs in this case. When stamping during NOP posting, do stamping following setting of the NOP WQE valid bit. Signed-off-by: Michael S. Tsirkin Signed-off-by: Jack Morgenstein Signed-off-by: Roland Dreier commit 785285fc8bc7f846ab68a063a8bf5a009d67725d Author: Russ Anderson Date: Tue Feb 5 17:12:32 2008 -0600 [IA64] Fix large MCA bootmem allocation The MCA code allocates bootmem memory for NR_CPUS, regardless of how many cpus the system actually has. This change allocates memory only for cpus that actually exist. On my test system with NR_CPUS = 1024, reserved memory was reduced by 130944k. Before: Memory: 27886976k/28111168k available (8282k code, 242304k reserved, 5928k data, 1792k init) After: Memory: 28017920k/28111168k available (8282k code, 111360k reserved, 5928k data, 1792k init) Signed-off-by: Russ Anderson Signed-off-by: Tony Luck commit 427639354ff346710012b53e1ceed5e3f3200e0c Author: Tony Luck Date: Fri Feb 8 11:53:09 2008 -0800 [IA64] Simplify cpu_idle_wait This is just Venki's patch[*] for x86 ported to ia64. * http://marc.info/?l=linux-kernel&m=120249201318159&w=2 Acked-by: Venkatesh Pallipadi Signed-off-by: Tony Luck commit aa91a2e90044b88228bdb0620e771f2ea7798804 Author: Petr Tesarik Date: Wed Dec 12 15:24:25 2007 +0100 [IA64] Synchronize RBS on PTRACE_ATTACH When attaching to a stopped process, the RSE must be explicitly synced to user-space, so the debugger can read the correct values. Signed-off-by: Petr Tesarik CC: Roland McGrath Signed-off-by: Tony Luck commit 3b2ce0b17824c42bc2e46f7dd903b4acf5e9fff9 Author: Petr Tesarik Date: Wed Dec 12 15:23:34 2007 +0100 [IA64] Synchronize kernel RSE to user-space and back This is base kernel patch for ptrace RSE bug. It's basically a backport from the utrace RSE patch I sent out several weeks ago. please review. when a thread is stopped (ptraced), debugger might change thread's user stack (change memory directly), and we must avoid the RSE stored in kernel to override user stack (user space's RSE is newer than kernel's in the case). To workaround the issue, we copy kernel RSE to user RSE before the task is stopped, so user RSE has updated data. we then copy user RSE to kernel after the task is resummed from traced stop and kernel will use the newer RSE to return to user. Signed-off-by: Shaohua Li Signed-off-by: Petr Tesarik CC: Roland McGrath Signed-off-by: Tony Luck commit 5aa92ffda1b6244b4a248df0b95c07d183ab96d2 Author: Petr Tesarik Date: Wed Dec 12 15:21:16 2007 +0100 [IA64] Rename TIF_PERFMON_WORK back to TIF_NOTIFY_RESUME Since the RSE synchronization will need a TIF_ flag, but all work-to-be-done bits are already used, so we have to multiplex TIF_NOTIFY_RESUME again. Signed-off-by: Shaohua Li Signed-off-by: Petr Tesarik Signed-off-by: Tony Luck commit ad9e39c70f46c5e17b1ed5912e8693454fec1455 Author: Tony Luck Date: Wed Feb 6 13:57:46 2008 -0800 [IA64] Wire up timerfd_{create,settime,gettime} syscalls Add ia64 hooks for the new syscalls that were added in commit 4d672e7ac79b5ec5cdc90e450823441e20464691 Signed-off-by: Tony Luck commit e27a93a944a5ba6a0112750c8243abba86d56e94 Author: Tony Lindgren Date: Tue Dec 18 20:58:32 2007 -0800 ARM: OMAP1: Misc clean-up This patch cleans up omap1 files to sync up with linux-omap tree: - Remove omap-generic MMC config as it should be defined in board-*.c files instead of using board-generic.c - New style I2C board_info from David Brownell - Init section fixes from Dirk Behme Signed-off-by: Tony Lindgren commit 80dbfde54bfc40c1e39ace7dbb371f095e74665f Author: Tony Lindgren Date: Tue Dec 18 21:15:53 2007 -0800 ARM: OMAP1: Update defconfigs for omap1 Update defconfigs for omap1 Signed-off-by: Tony Lindgren commit d7730cc01f703b1e3c43127bd38fb042c0efdb71 Author: Andrzej Zaborowski Date: Thu Dec 7 17:13:51 2006 -0800 ARM: OMAP1: Palm Tungsten E board clean-up Mostly gpio clean-up. Signed-off-by: Andrzej Zaborowski Signed-off-by: Tony Lindgren commit 1ed16a86b47fd7dd9125fc8f6df482cc6edc9b20 Author: Jarkko Nikula Date: Wed Nov 7 06:54:32 2007 +0200 ARM: OMAP1: Use I2C bus registration helper for omap1 This patch starts using introduced I2C bus registration helper by cleaning up registration currently done in various places and by doing necessary board file modifications. Signed-off-by: Jarkko Nikula Acked-by: David Brownell Signed-off-by: Tony Lindgren commit feb72f3b313e1f068b707773e9231af4f87d9580 Author: Vivek Kutal Date: Mon Dec 17 01:56:33 2007 -0800 ARM: OMAP1: Remove omap_sram_idle() This patch removes omap_sram_idle() that is no longer used. The function called in pm_idle is omap_sram_suspend, omap_sram_idle() is not used anywhere in omap1. Signed-off-by: Vivek Kutal Signed-off-by: Tony Lindgren commit 010bb0cf42fe2fa0a00753e0c11a3e8bfefb37a3 Author: Vivek Kutal Date: Tue Dec 11 21:46:31 2007 +0530 ARM: OMAP1: PM fixes for OMAP1 This patch does the following: - Fixes the omap_pm_idle() code so that we enter WFI mode in idle. - /sys/power/sleep_while_idle is created only when 32k timer is used Signed-off-by: Vivek Kutal Signed-off-by: Tony Lindgren commit 087c50302fbd608118e7c0f27a95dc552ad2f53b Author: Carlos Eduardo Aguiar Date: Fri Nov 30 01:52:53 2007 -0400 ARM: OMAP1: Use MMC multislot structures for Siemens SX1 board Use MMC multislot structures for Siemens SX1 board Signed-off-by: Carlos Eduardo Aguiar Signed-off-by: Tony Lindgren commit 138ab9f8321f67c71984ca43222efa71b0a0a0a9 Author: Felipe Balbi Date: Tue Nov 27 00:01:45 2007 -0400 ARM: OMAP1: Make omap1 use MMC multislot structures Make omap1 use new MMC multislot structures. The related MMC patches will be sent separately. Signed-off-by: Felipe Balbi Signed-off-by: Anderson Briglia Signed-off-by: Carlos Eduardo Aguiar Signed-off-by: David Cohen Signed-off-by: Eduardo Valentin Signed-off-by: Tony Lindgren commit 6e2d4107245cc0411959e91d7a1613e15097f117 Author: David Cohen Date: Thu Dec 13 22:27:15 2007 -0400 ARM: OMAP1: Change the comments to C style Change the comments to C style Signed-off-by: David Cohen Signed-off-by: Tony Lindgren commit 78be63252bc9065dd0a12c106135655b7d4db1ec Author: Tony Lindgren Date: Tue Dec 11 13:50:17 2007 -0800 ARM: OMAP1: Make omap1 boards to use omap_nand_platform_data This patch adds omap_nand_platform data based on a patch by Shahrom Sharif-Kashani , and makes omap1 boards to use omap_nand_platform_data instead of nand_platform_data used earlier. Signed-off-by: Tony Lindgren commit 85d05fb3fde692fdaa6b1f84c33fee718abebf0f Author: Jarkko Nikula Date: Wed Nov 7 06:54:31 2007 +0200 ARM: OMAP: Add helper module for board specific I2C bus registration This helper module simplifies I2C bus registration for different OMAP platforms by doing registration in one place only and to allow board specific bus configuration like clock rate and number of busses configured. Helper should cover OMAP processors from first to third generation. This patch just adds the feature and current implementation cleanup and board file modifications will be done in following patches. Signed-off-by: Jarkko Nikula Acked-by: David Brownell Signed-off-by: Tony Lindgren commit ce2df9ca41997f38cdfb9bee0db08763487222ae Author: Syed Mohammed, Khasim Date: Mon Jun 25 22:55:39 2007 -0700 ARM: OMAP: Add dmtimer support for OMAP3 Add DM timer support for OMAP3. Fixed source clocks for 3430 by Paul Walmsley . Signed-off-by: Syed Mohammed Khasim Signed-off-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 471b3aa70c2ba00e1a8c8399f848cbc04fd0beae Author: Syed Mohammed, Khasim Date: Thu Jun 21 21:48:07 2007 -0700 ARM: OMAP: Pre-3430 clean-up for dmtimer.c Cleanup DM timer list for OMAP2 and OMAP1 to allow adding support for 3430. Signed-off-by: Syed Mohammed Khasim Signed-off-by: Tony Lindgren commit f8151e5c327bfc41f0993a45fb61ea121bebfee4 Author: Anand Gadiyar Date: Sat Dec 1 12:14:11 2007 -0800 ARM: OMAP: Add DMA support for chaining and 3430 Add DMA support for chaining and 3430. Also remove old DEBUG_PRINTS as noted by Russell King. Signed-off-by: Anand Gadiyar Signed-off-by: Tony Lindgren commit 5eb3bb9c0d123ad84ed5127fbc62731896d87181 Author: Kevin Hilman Date: Sat May 5 11:40:29 2007 -0700 ARM: OMAP: Add 24xx GPIO debounce support Add 24xx GPIO debounce support. Also minor formatting clean-up. Signed-off-by: Kevin Hilman Signed-off-by: Tony Lindgren commit d11ac9791b87efb24506b6391a965b789385157c Author: Tony Lindgren Date: Sat Jan 12 15:35:04 2008 -0800 ARM: OMAP: Get rid of unnecessary ifdefs in GPIO code Just use cpu_is_omapXXXX() instead. This does not increase object size. Signed-off-by: Tony Lindgren commit 5492fb1a46ada0d1e89eb580c2a56db8924e3141 Author: Syed Mohammed, Khasim Date: Thu Nov 29 16:15:11 2007 -0800 ARM: OMAP: Add 3430 gpio support This patch adds 3430 gpio support. It also contains a fix by Paul Walmsley to use the correct clock names for OMAP3430. Signed-off-by: Syed Mohammed Khasim Signed-off-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 2c17f61599987ca7c54c2fef57de3bb8c32e3599 Author: Syed Mohammed Khasim Date: Tue Dec 4 15:38:13 2007 -0800 ARM: OMAP: Add 3430 CPU identification macros This patch adds omap3430 CPU identification macros. Silicon revision check macros added by Girish S G . CPU identification macro and silicon revision check macros cleaned up by Paul Walmsley . Signed-off-by: Syed Mohammed Khasim Signed-off-by: Girish S G Signed-off-by: Paul Walmsley Signed-off-by: Tony Lindgren commit 1cccd2a728673da00a05fe19c5ba4897257d6b8a Author: Tony Lindgren Date: Thu Nov 29 15:38:16 2007 -0800 ARM: OMAP: Request DSP memory for McBSP On OMAP1 some McBSP features depend on DSP. Also export polling functions as suggested by Luis Cargnini. Signed-off-by: Tony Lindgren commit ee44391eae5d1fabd6eacf89b3bb2e3fbc315e7d Author: Byron Bradley Date: Fri Feb 8 18:20:23 2008 +0000 [ARM] Orion: Use the sata_mv driver for the TS-209 SATA The TS-209 has a two port integrated SATA controller. Use the sata_mv driver for this. Signed-off-by: Byron Bradley Signed-off-by: Nicolas Pitre commit 3b277c2965b0c707b76f89368ebe6e6da6605c23 Author: Byron Bradley Date: Fri Feb 8 18:20:01 2008 +0000 [ARM] Orion: Use the sata_mv driver for the Kurobox SATA The Kurobox has a two port integrated SATA controller. Use the sata_mv driver for this. Signed-off-by: Byron Bradley Signed-off-by: Nicolas Pitre commit 920e526f93009a81e09809edb7a755a5b22e907d Author: Mike Frysinger Date: Sat Feb 9 02:07:08 2008 +0800 [Blackfin] arch: import defines for BF547 -- it is just like the BF548, but no CAN Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 67f2d33ec011621d1be6f0b17b8226c0eb3c3746 Author: Mike Frysinger Date: Sat Feb 9 01:49:23 2008 +0800 [Blackfin] arch: fix build fails only include header files when enabled Signed-off-by: Mike Frysinger Signed-off-by: Bryan Wu commit 8811930dc74a503415b35c4a79d14fb0b408a361 Author: Jens Axboe Date: Fri Feb 8 08:49:14 2008 -0800 splice: missing user pointer access verification vmsplice_to_user() must always check the user pointer and length with access_ok() before copying. Likewise, for the slow path of copy_from_user_mmap_sem() we need to check that we may read from the user region. Signed-off-by: Jens Axboe Cc: Wojciech Purczynski Signed-off-by: Greg Kroah-Hartman Signed-off-by: Linus Torvalds commit 66191dc622f5ff0a541524c4e96fdacfacfda206 Author: Jan Kara Date: Fri Feb 8 04:22:13 2008 -0800 quota: turn quotas off when remounting read-only Turn off quotas before filesystem is remounted read only. Otherwise quota will try to write to read-only filesystem which does no good... We could also just refuse to remount ro when quota is enabled but turning quota off is consistent with what we do on umount. Signed-off-by: Jan Kara Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 28ae094c625a9b719c01cf5ec45b8640e6911f53 Author: Neil Brown Date: Fri Feb 8 04:22:13 2008 -0800 ext3 can fail badly when device stops accepting BIO_RW_BARRIER requests Some devices - notably dm and md - can change their behaviour in response to BIO_RW_BARRIER requests. They might start out accepting such requests but on reconfiguration, they find out that they cannot any more. ext3 (and other filesystems) deal with this by always testing if BIO_RW_BARRIER requests fail with EOPNOTSUPP, and retrying the write requests without the barrier (probably after waiting for any pending writes to complete). However there is a bug in the handling for this for ext3. When ext3 (jbd actually) decides to submit a BIO_RW_BARRIER request, it sets the buffer_ordered flag on the buffer head. If the request completes successfully, the flag STAYS SET. Other code might then write the same buffer_head after the device has been reconfigured to not accept barriers. This write will then fail, but the "other code" is not ready to handle EOPNOTSUPP errors and the error will be treated as fatal. This can be seen without having to reconfigure a device at exactly the wrong time by putting: if (buffer_ordered(bh)) printk("OH DEAR, and ordered buffer\n"); in the while loop in "commit phase 5" of journal_commit_transaction. If it ever prints the "OH DEAR ..." message (as it does sometimes for me), then that request could (in different circumstances) have failed with EOPNOTSUPP, but that isn't tested for. My proposed fix is to clear the buffer_ordered flag after it has been used, as in the following patch. Signed-off-by: Neil Brown Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2dafe1c4d69345539735cca64250f2d4657bd057 Author: Eric Sandeen Date: Fri Feb 8 04:22:12 2008 -0800 reduce large do_mount stack usage with noinlines do_mount() uses a whopping 616 bytes of stack on x86_64 in 2.6.24-mm1, largely thanks to gcc inlining the various helper functions. noinlining these can slim it down a lot; on my box this patch gets it down to 168, which is mostly the struct nameidata nd; left on the stack. These functions are called only as do_mount() helpers; none of them should be in any path that would see a performance benefit from inlining... Signed-off-by: Eric Sandeen Cc: Arjan van de Ven Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit ac2a659968f5318a180213f0409c2ea21f072820 Author: Jeff Dike Date: Fri Feb 8 04:22:11 2008 -0800 uml: fix mm_context memory leak [ Spotted by Miklos ] Fix a memory leak in init_new_context. The struct page ** buffer allocated for install_special_mapping was never recorded, and thus leaked when the mm_struct was freed. Fix it by saving the pointer in mm_context_t and freeing it in arch_exit_mmap. Signed-off-by: Jeff Dike Cc: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5aaf5f7b871abf00fb2525e7ed2d5938a74ce23c Author: Jeff Dike Date: Fri Feb 8 04:22:10 2008 -0800 uml: x86_64 should copy %fs during fork %fs needs to be copied from parent to child during fork. Tidied up some whitespace while I was here. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 11a7ac23a2d7464a74ceb7b97dbae4d5a0208576 Author: Jim Meyering Date: Fri Feb 8 04:22:09 2008 -0800 uml: improved error handling while locating temp dir * arch/um/os-Linux/mem.c (make_tempfile): Don't deref NULL upon failed malloc. * arch/um/os-Linux/mem.c (make_tempfile): Handle NULL tempdir. Don't let a long tempdir (e.g., via TMPDIR) provoke heap corruption. [ jdike - formatting cleanups, deleted obsolete comment ] Signed-off-by: Jim Meyering Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 5134d8fea06ab51459fd095d091d1e6f73a44553 Author: Jeff Dike Date: Fri Feb 8 04:22:08 2008 -0800 uml: style fixes in arch/um/os-Linux Style changes under arch/um/os-Linux: include trimming CodingStyle fixes some printks needed severity indicators make_tempfile turns out not to be used outside of mem.c, so it is now static. Its declaration in tempfile.h is no longer needed, and tempfile.h itself is no longer needed. create_tmp_file was also made static. checkpatch moans about an EXPORT_SYMBOL in user_syms.c which is part of a macro definition - this is copying a bit of kernel infrastructure into the libc side of UML because the kernel headers can't be included there. Signed-off-by: Jeff Dike Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 536788fe2d28e11db6aeda74207d95d750fb761f Author: Jeff Dike Date: Fri Feb 8 04:22:07 2008 -0800 uml: runtime host VMSPLIT detection Calculate TASK_SIZE at run-time by figuring out the host's VMSPLIT - this is needed on i386 if UML is to run on hosts with varying VMSPLITs without recompilation. TASK_SIZE is now defined in terms of a variable, task_size. This gets rid of an include of pgtable.h from processor.h, which can cause include loops. On i386, task_size is calculated early in boot by probing the address space in a binary search to figure out where the boundary between usable and non-usable memory is. This tries to make sure that a page that is considered to be in userspace is, or can be made, read-write. I'm concerned about a system-global VDSO page in kernel memory being hit and considered to be a userspace page. On x86_64, task_size is just the old value of CONFIG_TOP_ADDR. A bunch of config variable are gone now. CONFIG_TOP_ADDR is directly replaced by TASK_SIZE. NEST_LEVEL is gone since the relocation of the stubs makes it irrelevant. All the HOST_VMSPLIT stuff is gone. All references to these in arch/um/Makefile are also gone. I noticed and fixed a missing extern in os.h when adding os_get_task_size. Note: This has been revised to fix the 32-bit UML on 64-bit host bug that Miklos ran into. Signed-off-by: Jeff Dike Cc: Miklos Szeredi Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 2f569afd9ced9ebec9a6eb3dbf6f83429be0a7b4 Author: Martin Schwidefsky Date: Fri Feb 8 04:22:04 2008 -0800 CONFIG_HIGHPTE vs. sub-page page tables. Background: I've implemented 1K/2K page tables for s390. These sub-page page tables are required to properly support the s390 virtualization instruction with KVM. The SIE instruction requires that the page tables have 256 page table entries (pte) followed by 256 page status table entries (pgste). The pgstes are only required if the process is using the SIE instruction. The pgstes are updated by the hardware and by the hypervisor for a number of reasons, one of them is dirty and reference bit tracking. To avoid wasting memory the standard pte table allocation should return 1K/2K (31/64 bit) and 2K/4K if the process is using SIE. Problem: Page size on s390 is 4K, page table size is 1K or 2K. That means the s390 version for pte_alloc_one cannot return a pointer to a struct page. Trouble is that with the CONFIG_HIGHPTE feature on x86 pte_alloc_one cannot return a pointer to a pte either, since that would require more than 32 bit for the return value of pte_alloc_one (and the pte * would not be accessible since its not kmapped). Solution: The only solution I found to this dilemma is a new typedef: a pgtable_t. For s390 pgtable_t will be a (pte *) - to be introduced with a later patch. For everybody else it will be a (struct page *). The additional problem with the initialization of the ptl lock and the NR_PAGETABLE accounting is solved with a constructor pgtable_page_ctor and a destructor pgtable_page_dtor. The page table allocation and free functions need to call these two whenever a page table page is allocated or freed. pmd_populate will get a pgtable_t instead of a struct page pointer. To get the pgtable_t back from a pmd entry that has been installed with pmd_populate a new function pmd_pgtable is added. It replaces the pmd_page call in free_pte_range and apply_to_pte_range. Signed-off-by: Martin Schwidefsky Cc: Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 13214adf738abc92b0a00c0763fd3be79eebaa7c Author: Andy Whitcroft Date: Fri Feb 8 04:22:03 2008 -0800 update checkpatch.pl to version 0.14 This version brings the remainder of the queued fixes. A number of fixes for items missed reported by Andrew Morton and others. Also a handful of new checks and fixes for false positives. Of note: - new warning associated with --file to try and avoid cleanup only patches, - corrected handling of completly empty files, - corrected report handling with multiple files, - handling of possible types in the face of multiple declarations, - detection of unnessary braces on complex if statements (where present), and - all new comment spacing handling. Andi Kleen (1): Introduce a warning when --file mode is used Andy Whitcroft (14): Version: 0.14 clean up some space violations in checkpatch.pl a completly empty file should not provoke a whinge reset report lines buffers between files unary ++/-- may abutt close braces __typeof__ is also unary comments: revamp comment handling add --summary-file option adding filename to summary line trailing backslashes are not trailing statements handle operators passed as parameters such as to ASSERTCMP possible types -- enhance debugging check for boolean operations with constants possible types: handle multiple declarations detect and report if statements where all branches are single statements Arjan van de Ven (1): quiet option should not print the summary on no errors Bartlomiej Zolnierkiewicz (1): warn about using __FUNCTION__ Timur Tabi (1): loosen spacing checks for __asm__ Signed-off-by: Andy Whitcroft Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 24649c00ca334955ac7d8a79f5a7834fc7ea441d Author: Ralf Baechle Date: Fri Feb 8 04:22:02 2008 -0800 MIPS: Mark all but i8259 interrupts as no-probe. Use set_irq_noprobe() to mark all MIPS interrupts as non-probe. Override that default for i8259 interrupts. Signed-off-by: Ralf Baechle Acked-and-tested-by: Rob Landley Cc: Alan Cox Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 46f4f8f665080900e865392f4b3593be463bf0d8 Author: Ralf Baechle Date: Fri Feb 8 04:22:01 2008 -0800 IRQ_NOPROBE helper functions Probing non-ISA interrupts using the handle_percpu_irq as their handle_irq method may crash the system because handle_percpu_irq does not check IRQ_WAITING. This for example hits the MIPS Qemu configuration. This patch provides two helper functions set_irq_noprobe and set_irq_probe to set rsp. clear the IRQ_NOPROBE flag. The only current caller is MIPS code but this really belongs into generic code. As an aside, interrupt probing these days has become a mostly obsolete if not dangerous art. I think Linux interrupts should be changed to default to non-probing but that's subject of this patch. Signed-off-by: Ralf Baechle Acked-and-tested-by: Rob Landley Cc: Alan Cox Cc: Ingo Molnar Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 922f9cfa79b52c85b6002d96cb0eefd13437c58c Author: Denis Cheng Date: Fri Feb 8 04:22:00 2008 -0800 fs/char_dev.c: chrdev_open marked static and removed from fs.h There is an outdated comment in serial_core.c also fixed. Signed-off-by: Denis Cheng Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit b55ab616fa4b00bdd5c470c70fdf87bab85eec68 Author: Patrick McHardy Date: Fri Feb 8 04:21:59 2008 -0800 preemptible RCU: sparse annotations Signed-off-by: Patrick McHardy Acked-by: Paul E. McKenney Cc: Dipankar Sarma Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 535ee2fbf79ab52d26bce3d2e127c9007503581e Author: Jan Kara Date: Fri Feb 8 04:21:59 2008 -0800 buffer_head: fix private_list handling There are two possible races in handling of private_list in buffer cache. 1) When fsync_buffers_list() processes a private_list, it clears b_assoc_mapping and moves buffer to its private list. Now drop_buffers() comes, sees a buffer is on list so it calls __remove_assoc_queue() which complains about b_assoc_mapping being cleared (as it cannot propagate possible IO error). This race has been actually observed in the wild. 2) When fsync_buffers_list() processes a private_list, mark_buffer_dirty_inode() can be called on bh which is already on the private list of fsync_buffers_list(). As buffer is on some list (note that the check is performed without private_lock), it is not readded to the mapping's private_list and after fsync_buffers_list() finishes, we have a dirty buffer which should be on private_list but it isn't. This race has not been reported, probably because most (but not all) callers of mark_buffer_dirty_inode() hold i_mutex and thus are serialized with fsync(). Fix these issues by not clearing b_assoc_map when fsync_buffers_list() moves buffer to a dedicated list and by reinserting buffer in private_list when it is found dirty after we have submitted buffer for IO. We also change the tests whether a buffer is on a private list from !list_empty(&bh->b_assoc_buffers) to bh->b_assoc_map so that they are single word reads and hence lockless checks are safe. Signed-off-by: Jan Kara Cc: Nick Piggin Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit f6f21c81464ce52dbeec921bdc2e8b288c491920 Author: Yinghai Lu Date: Fri Feb 8 04:21:58 2008 -0800 Convert loglevel-related kernel boot parameters to early_param So we can use them for the early console like console=uart8250 or earlycon=uart8250 or early_printk Signed-off-by: Yinghai Lu Cc: Andi Kleen Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds commit 06b2a76d25d3cfbd14680021c1d356c91be6904e Author: Yi Yang Date: Fri Feb 8 04:21:57 2008 -0800 Add new string functions strict_strto* and convert kernel params to use them Currently, for every sysfs node, the callers will be responsible for implementing store operation, so many many callers are doing duplicate things to validate input, they have the same mistakes because they are calling simple_strtol/ul/ll/uul, especially for module params, they are just numeric, but you can echo such values as 0x1234xxx, 07777888 and 1234aaa, for these cases, module params store operation just ignores succesive invalid char and converts prefix part to a numeric although input is acctually invalid. This patch tries to fix the aforementioned issues and implements strict_strtox serial functions, kernel/params.c uses them to strictly validate input, so module params will reject such values as 0x1234xxxx and returns an error: write error: Invalid argument Any modules which export numeric sysfs node can use strict_strtox instead of simple_strtox to reject any invalid input. Here are some test results: Before applying this patch: [root@yangyi-dev /]# cat /sys/module/e1000/parameters/copybreak 4096 [root@yangyi-dev /]# echo 0x1000 > /sys/module/e1000/parameters/copybreak [root@yangyi-dev /]# cat /sys/module/e1000