)]}'
{
  "log": [
    {
      "commit": "f62e770b25bdc24e18c9191fe2ca3e159036bd79",
      "tree": "9180909af9cc5af60147b7232a0b897b56a2ac45",
      "parents": [
        "40488db20e3f43e65f10747f9026fba7d59d29a3"
      ],
      "author": {
        "name": "Ben Dooks",
        "email": "ben-linux@fluff.org",
        "time": "Wed Feb 06 01:39:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:17 2008 -0800"
      },
      "message": "FB/S3C2412: add S3C2412 support to S3C2410 fb driver\n\nAdd support for the S3C2412 to the S3C2410 frame buffer driver\nby ensuring that any moved registers can be dealt with.\n\nSigned-off-by: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: Vincent Sanders \u003cvince@simtec.co.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "084ffff29844a4bce69999d67809e6c00309ba58",
      "tree": "11c98d8c1c127edc227cb610ffcac4e7c321bcc3",
      "parents": [
        "3c4f594a6da410789975dcde16b07b62c62fa564"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Feb 06 01:39:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:17 2008 -0800"
      },
      "message": "ps3: use symbolic names for video modes\n\nUse symbolic names for video modes\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3c4f594a6da410789975dcde16b07b62c62fa564",
      "tree": "9d110e6474109b650a922d2b01503044af556a00",
      "parents": [
        "a9a84c37d1ee50db8f3752b117caf2b48dcd4f8a"
      ],
      "author": {
        "name": "Geert Uytterhoeven",
        "email": "Geert.Uytterhoeven@sonycom.com",
        "time": "Wed Feb 06 01:39:28 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:16 2008 -0800"
      },
      "message": "ps3av: ps3av_get_scanmode() and ps3av_get_refresh_rate() are unused\n\nps3av_get_scanmode() and ps3av_get_refresh_rate() are unused, so remove them\n\nSigned-off-by: Geert Uytterhoeven \u003cGeert.Uytterhoeven@sonycom.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9a84c37d1ee50db8f3752b117caf2b48dcd4f8a",
      "tree": "adac878234cbe372624c5d33e7d70322972392d7",
      "parents": [
        "b1230ee50a9903a987feaad767fb71e2fd173894"
      ],
      "author": {
        "name": "David Brownell",
        "email": "dbrownell@users.sourceforge.net",
        "time": "Wed Feb 06 01:39:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:16 2008 -0800"
      },
      "message": "atmel_lcdfb: backlight control\n\nOn the sam9 EK boards, the LCD backlight is hooked up to a PWM output from\nthe LCD controller.  It\u0027s controlled by \"contrast\" registers though.\n\nThis patch lets boards declare that they have that kind of backlight\ncontrol.  The driver can then export this control, letting screenblank and\nother operations actually take effect ...  reducing the typically\nsubstantial power drain from the backlight.\n\nNote that it\u0027s not fully cooked\n  - doesn\u0027t force backlight off during system suspend\n  - the \"power\" and \"blank\" events may not be done right\nThis should be easily added in the future.\n\n[nicolas.ferre@atmel.com: remove unneeded inline and rename functions]\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Nicolas Ferre \u003cnicolas.ferre@atmel.com\u003e\nCc: Andrew Victor \u003clinux@maxim.org.za\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dfcffa467b4112fa6f1631c9d6bf7759c3bbe75a",
      "tree": "9614c586efae6e05a381f081956a30aaf9a175d2",
      "parents": [
        "625fcaf97340b9409e41fcefbbd18e02e3a9e9dd"
      ],
      "author": {
        "name": "Magnus Damm",
        "email": "magnus.damm@gmail.com",
        "time": "Wed Feb 06 01:39:24 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:16 2008 -0800"
      },
      "message": "sm501fb: control panel pin usage with platform data flags\n\nThis patch makes it possible to control panel pins usage with flags passed\nfrom the platform data.  Without this patch the sm501fb driver always controls\nthe VBIASEN and FPEN pins.  The polarity and use of these pins are very\nplatform specific, so this patch introduces the flags\nSM501FB_FLAG_PANEL_USE_VBIASEN and SM501FB_FLAG_PANEL_USE_FPEN which enable\nthe use of these pins.\n\nThis patch is needed to support the a Sharp LQ104V1DG21 lcd panel on SuperH\nplatforms such as R2D-1 and R2D-PLUS boards.  Letting the sm501fb driver\ncontrol the FPEN and VBIASEN pins like today just results in lcd panel\nflicker.\n\nSigned-off-by: Magnus Damm \u003cdamm@igel.co.jp\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "162b3a084904a1d6ef1553782b8573885d5f900b",
      "tree": "d525a8f16852d80175555d3e28c52fb1f7d98bc0",
      "parents": [
        "529e55b6a57bda6df9e45eb268589efc70f63303"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Wed Feb 06 01:39:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:15 2008 -0800"
      },
      "message": "atmel_lcdfb: validate display timings\n\nSetting a display timing parameter too high or too low may cause it to\nwrap around and thus become completely wrong. Validate the timings in\natmel_lcdfb_check_var() and saturate to the highest or lowest possible\nvalue if necessary.\n\nSigned-off-by: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f3dc3630f687aa4664b663143f69d99d83195c54",
      "tree": "928dd4c1b2ddc7970e6bfebe17911271e1417597",
      "parents": [
        "d1c057e31734426ba385e02291d97bdf06ba0c1d"
      ],
      "author": {
        "name": "Guennadi Liakhovetski",
        "email": "g.liakhovetski@pengutronix.de",
        "time": "Wed Feb 06 01:39:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:15 2008 -0800"
      },
      "message": "gpio: rename pca953x symbols\n\nThis second part of an extension to support more pca953x chips renames the C\nand Kconfig symbols.  All affected files were updated by sed, except for a\ncouple of obvious exceptions.  It also updates the Kconfig helptext.\n\nSigned-off-by: Guennadi Liakhovetski \u003cg.liakhovetski@pengutronix.de\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d1c057e31734426ba385e02291d97bdf06ba0c1d",
      "tree": "46d85c501626fdc8db60f30a7bc6c3c45eef89dd",
      "parents": [
        "ad8dc96e3b2c3e28854e0de4ab49351ed547b30c"
      ],
      "author": {
        "name": "Guennadi Liakhovetski",
        "email": "g.liakhovetski@pengutronix.de",
        "time": "Wed Feb 06 01:39:02 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:15 2008 -0800"
      },
      "message": "gpio: rename pca9539 driver\n\nFirst part of an extension to let the pca9539 driver support more chips,\nstarting with pca9534, pca9535, pca9536, pca9537, and pca9538.\n\nThis renames the files and modifies the Makefile.\n\nSigned-off-by: Guennadi Liakhovetski \u003cg.liakhovetski@pengutronix.de\u003e\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ad8dc96e3b2c3e28854e0de4ab49351ed547b30c",
      "tree": "6faab05e76206f130333ccff4c080600ed00d332",
      "parents": [
        "4cdf854f7d60498bbda436068a118b95059b244b"
      ],
      "author": {
        "name": "Ville Syrjala",
        "email": "syrjala@sci.fi",
        "time": "Wed Feb 06 01:39:01 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:15 2008 -0800"
      },
      "message": "w1-gpio: add GPIO w1 bus master driver\n\nAdd a GPIO 1-wire bus master driver.  The driver used the GPIO API to\ncontrol the wire and the GPIO pin can be specified using platform data\nsimilar to i2c-gpio.  The driver was tested with AT91SAM9260 + DS2401.\n\nSigned-off-by: Ville Syrjala \u003csyrjala@sci.fi\u003e\nCc: Evgeniy Polyakov \u003cjohnpol@2ka.mipt.ru\u003e\nCc: David Brownell \u003cdavid-b@pacbell.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f47cd9b553aaada602449204513b5a5b29cba263",
      "tree": "079ddd399b1aa00a8c413ef51f3b8681a19a6e7e",
      "parents": [
        "5beec4aa2ac261b0b4992fb41df40a7ab91e4fad"
      ],
      "author": {
        "name": "Abhishek Sagar",
        "email": "sagar.abhishek@gmail.com",
        "time": "Wed Feb 06 01:38:22 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:11 2008 -0800"
      },
      "message": "kprobes: kretprobe user entry-handler\n\nProvide support to add an optional user defined callback to be run at\nfunction entry of a kretprobe\u0027d function.  Also modify the kprobe smoke\ntests to include an entry-handler during the kretprobe sanity test.\n\nSigned-off-by: Abhishek Sagar \u003csagar.abhishek@gmail.com\u003e\nCc: Prasanna S Panchamukhi \u003cprasanna@in.ibm.com\u003e\nCc: Ananth N Mavinakayanahalli \u003cananth@in.ibm.com\u003e\nCc: Anil S Keshavamurthy \u003canil.s.keshavamurthy@intel.com\u003e\nAcked-by: Jim Keniston \u003cjkenisto@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b359fbc4582abf346fa6773b2bc1d63581fda582",
      "tree": "d759a99e9aee0cc23f62cb41335069610b9dd027",
      "parents": [
        "8bacb219018a52e6f02a3cff6a7badf102ddfc44"
      ],
      "author": {
        "name": "David Brownell",
        "email": "david-b@pacbell.net",
        "time": "Wed Feb 06 01:38:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:11 2008 -0800"
      },
      "message": "spi: s3c drivers shouldn\u0027t care about spi_board_info\n\nThe two S3C SPI master drivers got merged without much review, so I just\nnoticed that they\u0027re doing something that the SPI core code is responsible\nfor, rather than any adapter driver: they try to register SPI devices.\n\nThis removes that support from those drivers so they act normally.\nInterestingly, none of the current boards are affected.  So it\u0027s a net code\nshrink with no loss of functionality.\n\nSigned-off-by: David Brownell \u003cdbrownell@users.sourceforge.net\u003e\nCc: Ben Dooks \u003cben-linux@fluff.org\u003e\nCc: Russell King \u003crmk@arm.linux.org.uk\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "6ffc787a4492ac627315aaeafdfdc0a5c3028582",
      "tree": "bb557076ead94695cd148c4b7b065d44e77e62a3",
      "parents": [
        "82f560874e88bd1fd8c98a6254d65a1dffab3876"
      ],
      "author": {
        "name": "David Fries",
        "email": "david@fries.net",
        "time": "Wed Feb 06 01:38:04 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:10 2008 -0800"
      },
      "message": "system timer: fix crash in \u003c100Hz system timer\n\nThe kernel has a divide by zero crash when trying to run the system timer\nless than 100Hz.  The problem is x/(HZ/USER_HZ) and related.  Now\nx*(USER_HZ/HZ) will be used if HZ\u003cUSER_HZ.\n\nI\u0027m running the Linux kernel under qemu and went to run a slower system\ntimer to take less CPU (and battery) on the host.  I found that the kernel\npaniced under emulation because of a divide by zero in three places.  Here\nis the patch.  The base git was updated today 01-05-2008.  I went for a\n20Hz system time by adding config HZ_20 etc to kernel/Kconfig.hz.  With\nthis patch I verified the system timer by looking at /proc/interrupts.\n\n[akpm@linux-foundation.org: partially clean up the macro maze]\nSigned-off-by: David Fries \u003cdavid@fries.net\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1bf47346d75790ebd2563d909d48046961c7ffd5",
      "tree": "0f478764beb8dc4e0c71c5f3d6a657535579fe3a",
      "parents": [
        "6b2fb3c65844452bb9e8b449d50863d1b36c5dc0"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Feb 06 01:37:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:09 2008 -0800"
      },
      "message": "kernel/sys.c: get rid of expensive divides in groups_sort()\n\ngroups_sort() can be quite long if user loads a large gid table.\n\nThis is because GROUP_AT(group_info, some_integer) uses an integer divide.\nSo having to do XXX thousand divides during one syscall can lead to very\nhigh latencies.  (NGROUPS_MAX\u003d65536)\n\nIn the past (25 Mar 2006), an analog problem was found in groups_search()\n(commit d74beb9f33a5f16d2965f11b275e401f225c949d ) and at that time I\nchanged some variables to unsigned int.\n\nI believe that a more generic fix is to make sure NGROUPS_PER_BLOCK is\nunsigned.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "dc999159bbc1c542f310160c56ed8b701a7d6252",
      "tree": "79f8ad0ef400345953cfbe3699aec6b47bd23bf3",
      "parents": [
        "a8e3eff4668e3a4d6dbe7985a780f91de38a3c71"
      ],
      "author": {
        "name": "Luís P Mendes",
        "email": "luis.p.mendes@gmail.com",
        "time": "Wed Feb 06 01:37:43 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:08 2008 -0800"
      },
      "message": "parport: add support for the Quatech SPPXP-100 Parallel port PCI ExpressCard\n\nAdded pci device id for the Quatech SPPXP-100 ExpressCard - 0x278 - to\ninclude/linux/pci_id.h\n\nModified drivers/parport/parport_pc.c to support the Quatech SPPXP-100 Parallel port PCI ExpressCard\n\n[akpm@linux-foundation.org: build fix]\nSigned-off-by: Luís P Mendes \u003cluis.p.mendes@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "1a669c2f16d478cb7f4452e5fb8d09320831f4a1",
      "tree": "b13f0aa0aebc51d1795203658053484b7c97b8cb",
      "parents": [
        "941d2380e979dfefb6c824452e9f42be3ef948ee"
      ],
      "author": {
        "name": "Roland McGrath",
        "email": "roland@redhat.com",
        "time": "Wed Feb 06 01:37:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:07 2008 -0800"
      },
      "message": "Add arch_ptrace_stop\n\nThis adds support to allow asm/ptrace.h to define two new macros,\narch_ptrace_stop_needed and arch_ptrace_stop.  These control special\nmachine-specific actions to be done before a ptrace stop.  The new code\ncompiles away to nothing when the new macros are not defined.  This is the\ncase on all machines to begin with.\n\nOn ia64, these macros will be defined to solve the long-standing issue of\nptrace vs register backing store.\n\nSigned-off-by: Roland McGrath \u003croland@redhat.com\u003e\nCc: Petr Tesarik \u003cptesarik@suse.cz\u003e\nCc: Tony Luck \u003ctony.luck@intel.com\u003e\nCc: Matthew Wilcox \u003cwilly@debian.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4749380ed688884a3bd3328b1bf32529d96aa49b",
      "tree": "63bc3dd637b47e057ea96e4442aee927662cc57c",
      "parents": [
        "eb31005eaf3ca0705b404a78eb92f714c9449276"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Wed Feb 06 01:37:32 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:07 2008 -0800"
      },
      "message": "drivers/isdn/i4l/isdn_tty.c: remove write_sem\n\nI couldn\u0027t find any users, so removing it..\n\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eb31005eaf3ca0705b404a78eb92f714c9449276",
      "tree": "4515cc3579c0184ead833c5cfa60b719f39f3006",
      "parents": [
        "d156042f9fdffcb0171dc20f0d8b6df3fbf779c4"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Wed Feb 06 01:37:31 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:07 2008 -0800"
      },
      "message": "drivers/char/tty_io.c: remove pty_sem\n\nI couldn\u0027t find any users, so removing it..\n\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nAcked-by: Alan Cox \u003calan@redhat.com\u003e\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d99c4f6b13b3149bc83703ab1493beaeaaaf8a2d",
      "tree": "32e09d76cb46755d7420e6ad9a6e0802dab47963",
      "parents": [
        "ba6f867f114760d4e43f0f93abe280ee0a0d696e"
      ],
      "author": {
        "name": "Paul E. McKenney",
        "email": "paulmck@linux.vnet.ibm.com",
        "time": "Wed Feb 06 01:37:25 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:06 2008 -0800"
      },
      "message": "Remove rcu_assign_pointer() penalty for NULL pointers\n\nThe rcu_assign_pointer() primitive currently unconditionally executes a\nmemory barrier, even when a NULL pointer is being assigned.  This has lead\nsome to avoid using rcu_assign_pointer() for NULL pointers, which loses the\nself-documenting advantages of rcu_assign_pointer() This patch uses\n__builtin_const_p() to omit needless memory barriers for NULL-pointer\nassignments at compile time with no runtime penalty, as discussed in the\nfollowing thread:\n\n\thttp://www.mail-archive.com/netdev@vger.kernel.org/msg54852.html\n\nTested on x86_64 and ppc64, also compiled the four cases (NULL/non-NULL\nand const/non-const) with gcc version 4.1.2, and hand-checked the\nassembly output.\n\nSigned-off-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nAcked-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5ab24c79af5a05659f68eae3e5f232c9a15359d7",
      "tree": "c29377ae11f33bec48aa2cf288cd14110038ca7b",
      "parents": [
        "ed8485fb340056c4d9062e9d2697c8402dd19eb0"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Wed Feb 06 01:37:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:06 2008 -0800"
      },
      "message": "Fix __const_udelay declaration and definition mismatches\n\nThe declaration and implementation of __const_udelay use different\nnames for the parameter on a number of architectures:\n\ninclude/asm-avr32/delay.h:15:extern void __const_udelay(unsigned long usecs);\narch/avr32/lib/delay.c:39:inline void __const_udelay(unsigned long xloops)\n\ninclude/asm-sh/delay.h:15:extern void __const_udelay(unsigned long usecs);\narch/sh/lib/delay.c:22:inline void __const_udelay(unsigned long xloops)\n\ninclude/asm-m32r/delay.h:15:extern void __const_udelay(unsigned long usecs);\narch/m32r/lib/delay.c:58:void __const_udelay(unsigned long xloops)\n\ninclude/asm-x86/delay.h:16:extern void __const_udelay(unsigned long usecs);\narch/x86/lib/delay_32.c:82:inline void __const_udelay(unsigned long xloops)\narch/x86/lib/delay_64.c:46:inline void __const_udelay(unsigned long xloops)\n\nThe units of the parameter isn\u0027t usecs, so that name is definitely\nwrong.  It\u0027s also not exactly loops, so I suppose xloops is an OK\nname.\n\nThis patch changes these names from usecs to xloops.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9cfe015aa424b3c003baba3841a60dd9b5ad319b",
      "tree": "5575e06efcf91018f860f2db43979e8e91aba1c3",
      "parents": [
        "774ed22c21ab95d582dfff38560f11cf290baeb4"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Feb 06 01:37:16 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:06 2008 -0800"
      },
      "message": "get rid of NR_OPEN and introduce a sysctl_nr_open\n\nNR_OPEN (historically set to 1024*1024) actually forbids processes to open\nmore than 1024*1024 handles.\n\nUnfortunatly some production servers hit the not so \u0027ridiculously high\nvalue\u0027 of 1024*1024 file descriptors per process.\n\nChanging NR_OPEN is not considered safe because of vmalloc space potential\nexhaust.\n\nThis patch introduces a new sysctl (/proc/sys/fs/nr_open) wich defaults to\n1024*1024, so that admins can decide to change this limit if their workload\nneeds it.\n\n[akpm@linux-foundation.org: export it for sparc64]\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Ralf Baechle \u003cralf@linux-mips.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ece95912db94d98e202cbedb8f35206deb29d83d",
      "tree": "7900aa32e8f8ee26f708471664a5b4024997be40",
      "parents": [
        "6d9851618104a21dbf5ee8260b5f2d4b5229c77e"
      ],
      "author": {
        "name": "Jan Kara",
        "email": "jack@suse.cz",
        "time": "Wed Feb 06 01:37:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:05 2008 -0800"
      },
      "message": "inotify: send IN_ATTRIB events when link count changes\n\nCurrently, no notification event has been sent when inode\u0027s link count\nchanged.  This is inconvenient for the application in some cases:\n\nSuppose you have the following directory structure\n\n    foo/test\n    bar/\n\nand you watch test.  If someone does \"mv foo/test bar/\", you get event\nIN_MOVE_SELF and you know something has happened with the file \"test\".\nHowever if someone does \"ln foo/test bar/test\" and \"rm foo/test\" you get no\ninotify event for the file \"test\" (only directories \"foo\" and \"bar\" receive\nevents).\n\nFurthermore it could be argued that link count belongs to file\u0027s metadata and\nthus IN_ATTRIB should be sent when it changes.\n\nThe following patch implements sending of IN_ATTRIB inotify events when link\ncount of the inode changes, i.e., when a hardlink to the inode is created or\nwhen it is removed.  This event is sent in addition to all the events sent so\nfar.  In particular, when a last link to a file is removed, IN_ATTRIB event is\nsent in addition to IN_DELETE_SELF event.\n\nSigned-off-by: Jan Kara \u003cjack@suse.cz\u003e\nAcked-by: Morten Welinder \u003cmwelinder@gmail.com\u003e\nCc: Robert Love \u003crlove@google.com\u003e\nCc: John McCutchan \u003cttb@tentacle.dhs.org\u003e\nCc: Steven French \u003csfrench@us.ibm.com\u003e\nCc: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "797074e44d78835adbde2ca527718b0e50226b95",
      "tree": "7a54757b7201f4e0085ad1a654fa319eb7e07816",
      "parents": [
        "e8462caa915d4d12846db7aae2557b6db7c054d5"
      ],
      "author": {
        "name": "Akinobu Mita",
        "email": "akinobu.mita@gmail.com",
        "time": "Wed Feb 06 01:37:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:05 2008 -0800"
      },
      "message": "fs: use list_for_each_entry_reverse and kill sb_entry\n\nUse list_for_each_entry_reverse for super_blocks list and remove\nunused sb_entry macro.\n\nSigned-off-by: Akinobu Mita \u003cakinobu.mita@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f10db6277dfd6dffb80b2182a256d35adb3134bc",
      "tree": "a86607ebc3567c2e4098907f986466e07a74f268",
      "parents": [
        "b0940003f25dd3d2c54c4879809a432a35197f54"
      ],
      "author": {
        "name": "Herbert Xu",
        "email": "herbert@gondor.apana.org.au",
        "time": "Wed Feb 06 01:37:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:04 2008 -0800"
      },
      "message": "Avoid divide in IS_ALIGN\n\nI was happy to discover the brand new IS_ALIGN macro and quickly used it in\nmy code.  To my dismay I found that the generated code used division to\nperform the test.\n\nThis patch fixes it by changing the % test to an \u0026.  This avoids the\ndivision.\n\nSigned-off-by: Herbert Xu \u003cherbert@gondor.apana.org.au\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b3242151906372f30f57feaa43b4cac96a23edb1",
      "tree": "d258219aa13dfeae8d9fb5db1fd220a0664a680d",
      "parents": [
        "e7ca2d41a029577a8cff453d1445951d4f96bfd8"
      ],
      "author": {
        "name": "Eric Dumazet",
        "email": "dada1@cosmosbay.com",
        "time": "Wed Feb 06 01:37:01 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:04 2008 -0800"
      },
      "message": "PERCPU : __percpu_alloc_mask() can dynamically size percpu_data storage\n\nInstead of allocating a fix sized array of NR_CPUS pointers for percpu_data,\nwe can use nr_cpu_ids, which is generally \u003c NR_CPUS.\n\nSigned-off-by: Eric Dumazet \u003cdada1@cosmosbay.com\u003e\nCc: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e7ca2d41a029577a8cff453d1445951d4f96bfd8",
      "tree": "60262e34e937ea9bfae7709a913ca940b928eae3",
      "parents": [
        "20420bba13bf79c86cab1e5bdfc4c938d9e44bc9"
      ],
      "author": {
        "name": "Joern Engel",
        "email": "joern@logfs.org",
        "time": "Wed Feb 06 01:36:59 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:03 2008 -0800"
      },
      "message": "Document I_SYNC and I_DATASYNC\n\nAfter some archeology (see http://logfs.org/logfs/inode_state_bits) I\nfinally figured out what the three I_DIRTY bits do.  Maybe others would\nprefer less effort to reach this insight.\n\nSigned-off-by: Joern Engel \u003cjoern@logfs.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0321155926b32cbc46f6603c6cc455e046b4d9b2",
      "tree": "01ca7e2709582dfd754bee427cf1959adbff52b2",
      "parents": [
        "de9330d13eac1f331e63ab1d18c506365b0151f3"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "olsajiri@gmail.com",
        "time": "Wed Feb 06 01:36:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:03 2008 -0800"
      },
      "message": "fs: remove dead config CONFIG_HAS_COMPAT_EPOLL_EVENT symbol\n\nRemove dead config CONFIG_HAS_COMPAT_EPOLL_EVENT symbol.\n\nSigned-off-by: Jiri Olsa \u003colsajiri@gmail.com\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "de9330d13eac1f331e63ab1d18c506365b0151f3",
      "tree": "67fc0eb97f706d8cb39485dba50da9f9918c3f3f",
      "parents": [
        "582539e5a0480f1e00e3b9ffbe50bd5b2f59a16f"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Wed Feb 06 01:36:54 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:03 2008 -0800"
      },
      "message": "log2.h: Define order_base_2() macro for convenience.\n\nGiven a number of places in the tree that need to calculate this value\nexplicitly, might as well just create a macro for it.\n\n(akpm: must be implemented as a macro for callee typeof() usage)\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26464378c4af9f7461b9d9e359f98dbd34ab3544",
      "tree": "0b30d044efb49eac5b6899cbc62beaeaf4296596",
      "parents": [
        "7747cdb2f8302c2e1121f6d604b62a060fb04603"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:49 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:03 2008 -0800"
      },
      "message": "proper prototype for vty_init()\n\nAdd a proper prototype for vty_init() in include/linux/vt_kern.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "011e3fcd1e1f14ef54db30b93404ab7caa726477",
      "tree": "2d8b5dc618f370cb8f2aafd16f15e324fca872bb",
      "parents": [
        "c166f23cb56a76983ce860739d95c8296e57d6b3"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "proper prototype for get_filesystem_list()\n\nAd a proper prototype for migration_init() in include/linux/fs.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a1c9eea9e56a7196c6891f6426b799c4598b38e2",
      "tree": "30beda8a7c7f45e77f96d0a49008e84e227a7ae6",
      "parents": [
        "ce88cc5ed80de746f5bd2d8242291c87e7b87f63"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:44 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "proper prototype for signals_init()\n\nAdd a proper prototype for signals_init() in include/linux/signal.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "941e492bdb1239d2ca8f5736cdfd3ff83d00cb90",
      "tree": "6c048ee92ec94cbced1881308e14c2541321f077",
      "parents": [
        "83bad1d764b836a482b88e0a1f44d7a5c3e1fee0"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Wed Feb 06 01:36:42 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "read_current_timer() cleanups\n\n- All implementations can be __devinit\n\n- The function prototypes were in asm/timex.h but they all must be the same,\n  so create a single declaration in linux/timex.h.\n\n- uninline the sparc64 version to match the other architectures\n\n- Don\u0027t bother #defining ARCH_HAS_READ_CURRENT_TIMER to a particular value.\n\n[ezk@cs.sunysb.edu: fix build]\nCc: \"David S. Miller\" \u003cdavem@davemloft.net\u003e\nCc: Haavard Skinnemoen \u003chskinnemoen@atmel.com\u003e\nCc: Thomas Gleixner \u003ctglx@linutronix.de\u003e\nCc: Ingo Molnar \u003cmingo@elte.hu\u003e\nCc: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "83bad1d764b836a482b88e0a1f44d7a5c3e1fee0",
      "tree": "2fe0844d81a178ab51c22f41accef9b332ea86b6",
      "parents": [
        "b4cf9c342a2887f425780c23ad2be3077949cee2"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:36 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "scheduled OSS driver removal\n\nThis patch contains the scheduled removal of OSS drivers whose config\noptions have been removed in 2.6.23.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f74596d07957235ad9da5120029348b372224a27",
      "tree": "72089ad3368af0e674952866dd9db69b1bcb42f9",
      "parents": [
        "0b03cfb25fa944bc106e816146846dcb48b2e907"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:02 2008 -0800"
      },
      "message": "proper show_interrupts() prototype\n\nAdd a proper prototype for show_interrupts() in include/linux/interrupt.h\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "870b8f8c43d000bb321b42a12212facc1087a748",
      "tree": "62870e2d8608887b8f7892049787f78edc3b8549",
      "parents": [
        "7b892806b09dca77db8ef6acbb6c51271578d34d"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:30 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "remove mm_{ptov,vtop}()\n\nThis patch removes the unused mm_{ptov,vtop}().\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Greg Ungerer \u003cgerg@uclinux.org\u003e\nAcked-by: Bryan Wu \u003cbryan.wu@analog.com\u003e\nCc: Miles Bader \u003cmiles.bader@necel.com\u003e\nCc: Yoshinori Sato \u003cysato@users.sourceforge.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7b892806b09dca77db8ef6acbb6c51271578d34d",
      "tree": "594e77bbf8b9147d4cd39a67a89c26ada1572546",
      "parents": [
        "b524b9adb3f655697fe6df9197b3ed6f14bc1729"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Wed Feb 06 01:36:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "cleanup after APUS removal\n\nAfter the APUS removal, some code can be removed.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\nCc: Karsten Keil \u003ckkeil@suse.de\u003e\nCc: James Bottomley \u003cJames.Bottomley@steeleye.com\u003e\nCc: \"Antonino A. Daplas\" \u003cadaplas@pol.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "96c5865559cee0f9cbc5173f3c949f6ce3525581",
      "tree": "bbcfa89faeae5e5b1334a8f537b6bdb7caa992d8",
      "parents": [
        "a3b81113fb6658629f4ebaabf8dd3067cd341020"
      ],
      "author": {
        "name": "David Woodhouse",
        "email": "dwmw2@infradead.org",
        "time": "Wed Feb 06 01:36:27 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "Allow auto-destruction of loop devices\n\nThis allows a flag to be set on loop devices so that when they are\nclosed for the last time, they\u0027ll self-destruct.\n\nIn general, so that we can automatically allocate loop devices (as with\nlosetup -f) and have them disappear when we\u0027re done with them.\n\nIn particular, right now, so that we can stop relying on the hackish\nspecial-case in umount(8) which kills off loop devices which were set up by\n\u0027mount -oloop\u0027.  That means we can stop putting crap in /etc/mtab which\ndoesn\u0027t belong there, which means it can be a symlink to /proc/mounts, which\nmeans yet another writable file on the root filesystem is eliminated and the\n\u0027stateless\u0027 folks get happier...  and OLPC trac #356 can be closed.\n\nThe mount(8) side of that is at\nhttp://marc.info/?l\u003dutil-linux-ng\u0026m\u003d119362955431694\u0026w\u003d2\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Bernardo Innocenti \u003cbernie@codewiz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a3b81113fb6658629f4ebaabf8dd3067cd341020",
      "tree": "c6823e84d410f18b110ce07726643d7dc841553d",
      "parents": [
        "0a5dcb51770be3cd0202d6b90a07996fb40130b6"
      ],
      "author": {
        "name": "Robin Getz",
        "email": "rgetz@blackfin.uclinux.org",
        "time": "Wed Feb 06 01:36:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "remove support for un-needed _extratext section\n\nWhen passing a zero address to kallsyms_lookup(), the kernel thought it was\na valid kernel address, even if it is not.  This is because is_ksym_addr()\ncalled is_kernel_extratext() and checked against labels that don\u0027t exist on\nmany archs (which default as zero).  Since PPC was the only kernel which\ndefines _extra_text, (in 2005), and no longer needs it, this patch removes\n_extra_text support.\n\nFor some history (provided by Jon):\n http://ozlabs.org/pipermail/linuxppc-dev/2005-September/019734.html\n http://ozlabs.org/pipermail/linuxppc-dev/2005-September/019736.html\n http://ozlabs.org/pipermail/linuxppc-dev/2005-September/019751.html\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Robin Getz \u003crgetz@blackfin.uclinux.org\u003e\nCc: David Woodhouse \u003cdwmw2@infradead.org\u003e\nCc: Jon Loeliger \u003cjdl@freescale.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Sam Ravnborg \u003csam@ravnborg.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0a5dcb51770be3cd0202d6b90a07996fb40130b6",
      "tree": "75ac6d5c64be71369126e8ad05b62b59576df4e7",
      "parents": [
        "8f47f0b688bba7642dac4e979896e4692177670b"
      ],
      "author": {
        "name": "Matthias Kaehlcke",
        "email": "matthias.kaehlcke@gmail.com",
        "time": "Wed Feb 06 01:36:25 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:01 2008 -0800"
      },
      "message": "Parallel port: convert port_mutex to the mutex API\n\nParallel port: Convert port_mutex to the mutex API\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Matthias Kaehlcke \u003cmatthias.kaehlcke@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4e701482d1d7b90c358e2bd244bb71623f767120",
      "tree": "a054f87e31645eba4d9e2c76396c54afbe6fa895",
      "parents": [
        "d9ae90ac4bdce769ddb27c2e24c3351a30c3daf8"
      ],
      "author": {
        "name": "Matthew Wilcox",
        "email": "matthew@wil.cx",
        "time": "Wed Feb 06 01:36:14 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:00 2008 -0800"
      },
      "message": "hash: add explicit u32 and u64 versions of hash\n\nThe 32-bit version is more efficient (and apparently gives better hash\nresults than the 64-bit version), so users who are only hashing a 32-bit\nquantity can now opt to use the 32-bit version explicitly, rather than\npromoting to a long.\n\nSigned-off-by: Matthew Wilcox \u003cwilly@linux.intel.com\u003e\nCc: William Lee Irwin III \u003cwli@holomorphy.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "06b8e878a9bc9301201cffe186eba99c4185f20a",
      "tree": "857434ed559cdb001177e81283be6f0b5693a781",
      "parents": [
        "d9afa43532adf8a31b93c4c7601fda3f423d8972"
      ],
      "author": {
        "name": "Michael Neuling",
        "email": "mikey@neuling.org",
        "time": "Wed Feb 06 01:36:12 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Wed Feb 06 10:41:00 2008 -0800"
      },
      "message": "taskstats scaled time cleanup\n\nThis moves the ability to scale cputime into generic code.  This allows us\nto fix the issue in kernel/timer.c (noticed by Balbir) where we could only\nadd an unscaled value to the scaled utime/stime.\n\nThis adds a cputime_to_scaled function.  As before, the POWERPC version\ndoes the scaling based on the last SPURR/PURR ratio calculated.  The\ngeneric and s390 (only other arch to implement asm/cputime.h) versions are\nboth NOPs.\n\nAlso moves the SPURR and PURR snapshots closer.\n\nSigned-off-by: Michael Neuling \u003cmikey@neuling.org\u003e\nCc: Jay Lan \u003cjlan@engr.sgi.com\u003e\nCc: Paul Mackerras \u003cpaulus@samba.org\u003e\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nCc: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "551e4fb2465b87de9d4aa1669b27d624435443bb",
      "tree": "316a5816b833a7536071a4ee0913a9b51b4faff8",
      "parents": [
        "b297d520b9af536d5580ac505dd316be4cf5560c",
        "dfe799364e7a500389559e1dcd331d995cdc18ea"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 19:06:25 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 19:06:25 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (29 commits)\n  ide-tape: bump minor driver version\n  ide-tape: cleanup the remaining codestyle issues\n  ide-tape: fix syntax error in idetape_identify_device()\n  ide-tape: remove leftover OnStream support warning\n  ide-tape: collect module-related macro calls at the end\n  ide-tape: include proper headers\n  ide-tape: remove unused \"length\" arg from idetape_create_read_buffer_cmd()\n  ide-tape: remove struct idetape_id_gcw\n  ide-tape: cleanup and fix comments\n  ide-tape: shorten some function names\n  ide-tape: remove idetape_increase_max_pipeline_stages()\n  ide-tape: struct idetape_tape_t: shorten member names v2\n  ide-tape: struct idetape_tape_t: remove unused members\n  ide-tape: remove typedef idetape_chrdev_direction_t\n  ide-tape: simplify code branching in the interrupt handler\n  ide-tape: remove unreachable code chunk\n  ide-tape: remove struct idetape_read_position_result_t\n  ide-tape: refactor the debug logging facility\n  ide: add ide_read_error() inline helper\n  ide: add ide_read_[alt]status() inline helpers\n  ...\n"
    },
    {
      "commit": "64a57fe4393bae920d03c253173f59d8a7ec8e25",
      "tree": "bfbac6fa370401d519a6fd9433a330dd55efe68d",
      "parents": [
        "c47137a99c597330b69057158b26061a360c0e09"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "message": "ide: add ide_read_error() inline helper\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "c47137a99c597330b69057158b26061a360c0e09",
      "tree": "aacd4cb968b8d7bdebdcbcce19f110469a977243",
      "parents": [
        "29dd59755a849cc6475faa6a75f3b804e23a6fc2"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:51 2008 +0100"
      },
      "message": "ide: add ide_read_[alt]status() inline helpers\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "29dd59755a849cc6475faa6a75f3b804e23a6fc2",
      "tree": "007f73aed935c22438e69cb2d2438b93f249d955",
      "parents": [
        "f2694b7e3bad75436b47b6840de352f7b7f53feb"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "message": "ide: remove ide_setup_ports()\n\nide-cris.c:\n* Add cris_setup_ports() helper and use it instead of ide_setup_ports()\n  (fixes random value being set in -\u003eio_ports[IDE_IRQ_OFFSET]).\n\nbuddha.c:\n* Add buddha_setup_ports() helper and use it instead of ide_setup_ports().\n\nfalconide.c:\n* Add falconide_setup_ports() helper and use it instead of ide_setup_ports(),\n  also fix return value of falconide_init() while at it.\n\ngayle.c:\n* Add gayle_setup_ports() helper and use it instead of ide_setup_ports().\n\nmacide.c:\n* Add macide_setup_ports() helper and use it instead of ide_setup_ports()\n  (fixes incorrect value being set in -\u003eio_ports[IDE_IRQ_OFFSET]).\n\nq40ide.c:\n* Fix q40_ide_setup_ports() comments.\n\nide.c:\n* Remove no longer needed ide_setup_ports().\n\nCc: Mikael Starvik \u003cstarvik@axis.com\u003e\nCc: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "afdd360c95632b0c882790a7b25ff505664adcd0",
      "tree": "47a2d689d4de0e32fd15afc07cd6937d707faa1e",
      "parents": [
        "34394e45c3387bd66619d9a51b4be507e4222b02"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "message": "ide: remove write-only -\u003esata_misc[] from ide_hwif_t\n\n* Remove write-only -\u003esata_misc[] from ide_hwif_t.\n\n* Remove no longer used SATA_{MISC,PHY,IEN}_OFFSET defines.\n\nAcked-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "34394e45c3387bd66619d9a51b4be507e4222b02",
      "tree": "e01f4b89b71e9126c02a1f23896a92bd29644754",
      "parents": [
        "594765a7316562cb7442f760a9a2f6e02804b610"
      ],
      "author": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:50 2008 +0100"
      },
      "message": "ppc: fix #ifdef-s in mediabay driver (take 2)\n\n* Replace incorrect CONFIG_BLK_DEV_IDE #ifdef in\n  check_media_bay() by CONFIG_MAC_FLOPPY one.\n\n* Replace incorrect CONFIG_BLK_DEV_IDE #ifdef-s by\n  CONFIG_BLK_DEV_IDE_PMAC ones.\n\n* check_media_bay() is used only by drivers/block/swim3.c\n  so make this function available only if CONFIG_MAC_FLOPPY\n  is defined.\n\n* check_media_bay_by_base() and media_bay_set_ide_infos()\n  are used only by drivers/ide/ppc/pmac.c so so make these\n  functions available only if CONFIG_MAC_FLOPPY is defined.\n\nv2:\n* Remove ifdefs from function prototypes. (Andrew Morton)\n\nCc: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nCc: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "7c7e92a9268965e08bba853ecdb94fa55e886741",
      "tree": "62d4be36537b8456ef9d09c7deb0b44204f35562",
      "parents": [
        "b2a53bc636b0e7e9ce4c899ad605432339ef5861"
      ],
      "author": {
        "name": "Anton Salnikov",
        "email": "asalnikov@ru.mvista.com",
        "time": "Wed Feb 06 02:57:48 2008 +0100"
      },
      "committer": {
        "name": "Bartlomiej Zolnierkiewicz",
        "email": "bzolnier@gmail.com",
        "time": "Wed Feb 06 02:57:48 2008 +0100"
      },
      "message": "Palmchip BK3710 IDE driver\n\nThis is Palmchip BK3710 IDE controller support.\n\nThe IDE controller logic supports PIO, MultiWord-DMA and Ultra-DMA modes.\nSupports interface to Compact Flash (CF) configured in True-IDE mode.\n\nBart:\n- remove dead code\n- fix ide_hwif_setup_dma() build problem\n\nSigned-off-by: Anton Salnikov \u003casalnikov@ru.mvista.com\u003e\nReviewed-by: Alan Cox \u003calan@lxorguk.ukuu.org.uk\u003e\nReviewed-by: Sergei Shtylyov \u003csshtylyov@ru.mvista.com\u003e\nSigned-off-by: Bartlomiej Zolnierkiewicz \u003cbzolnier@gmail.com\u003e\n"
    },
    {
      "commit": "9692bd9c140618e3f6a2848900aee96c9cd8a65c",
      "tree": "6f2c5cec4830ffe2c46d6ac033fd6a31e955001f",
      "parents": [
        "46a56c5a02430f80ef73357aa1295875c1cef2a7"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Tue Feb 05 14:22:56 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 14:37:15 2008 -0800"
      },
      "message": "timerfd: fix remaining architectures\n\nCc: David Howells \u003cdhowells@redhat.com\u003e\nCc: Hirokazu Takata \u003ctakata@linux-m32r.org\u003e\nCc: Paul Mundt \u003clethal@linux-sh.org\u003e\nCc: Kazumoto Kojima \u003ckkojima@rr.iij4u.or.jp\u003e\nCc: Richard Curnow \u003crc@rc0.org.uk\u003e\nCc: Davide Libenzi \u003cdavidel@xmailserver.org\u003e\nCc: Michael Kerrisk \u003cmtk-manpages@gmx.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46a56c5a02430f80ef73357aa1295875c1cef2a7",
      "tree": "75dd8e67bf33344c62d48af1ad79bb28cb9f2652",
      "parents": [
        "8cb2a7c1e95e472b5ad8cbde4d5c7bb65c532603"
      ],
      "author": {
        "name": "Haavard Skinnemoen",
        "email": "hskinnemoen@atmel.com",
        "time": "Tue Feb 05 14:22:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 14:37:15 2008 -0800"
      },
      "message": "Fix timerfd breakage on avr32\n\nHmm. Someone removed the timerfd() syscall...\n\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "21511abd0a248a3f225d3b611cfabb93124605a7",
      "tree": "eb490f94322f3c76169ea7e5ec09524f275f390e",
      "parents": [
        "39ce941ec15032c0efc3632b9f00a6b2365e1870",
        "e1b0d4ba46b42909d11ea152a6b56ee76f062ca3"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:24:52 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:24:52 2008 -0800"
      },
      "message": "Merge branch \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6\n\n* \u0027release\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:\n  [IA64] make pfm_get_task work with virtual pids\n  [IA64] honor notify_die() returning NOTIFY_STOP\n  [IA64] remove dead code: __cpu_{down,die} from !HOTPLUG_CPU\n  [IA64] Appoint kvm/ia64 Maintainers\n  [IA64] ia64_set_psr should use srlz.i\n  [IA64] Export three symbols for module use\n  [IA64] mca style cleanup\n  [IA64] sn_hwperf semaphore to mutex\n  [IA64] generalize attribute of fsyscall_gtod_data\n  [IA64] efi.c Add /* never reached */ annotation\n  [IA64] efi.c Spelling/punctuation fixes\n  [IA64] Make efi.c mostly fit in 80 columns\n  [IA64] aliasing-test: fix gcc warnings on non-ia64\n  [IA64] Slim-down __clear_bit_unlock\n  [IA64] Fix the order of atomic operations in restore_previous_kprobes on ia64\n  [IA64] constify function pointer tables\n  [IA64] fix userspace compile error in gcc_intrin.h\n"
    },
    {
      "commit": "39ce941ec15032c0efc3632b9f00a6b2365e1870",
      "tree": "9ac548adf0444b8a74e31c984e5a49766fc2c385",
      "parents": [
        "3d412f60b71e588544e7b75861084f12aa1d7acd",
        "c5411dba58c28736d25cffef65da1e01ed7d1423"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:11:02 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:11:02 2008 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6\n\n* \u0027for-linus\u0027 of git://git390.osdl.marist.edu/pub/scm/linux-2.6:\n  [S390] dcss: Initialize workqueue before using it.\n  [S390] Remove BUILD_BUG_ON() in vmem code.\n  [S390] sclp_tty/sclp_vt220: Fix scheduling while atomic\n  [S390] dasd: fix panic caused by alias device offline\n  [S390] dasd: add ifcc handling\n  [S390] latencytop s390 support.\n  [S390] Implement ext2_find_next_bit.\n  [S390] Cleanup \u0026 optimize bitops.\n  [S390] Define GENERIC_LOCKBREAK.\n  [S390] console: allow vt220 console to be the only console\n  [S390] Fix couple of section mismatches.\n  [S390] Fix smp_call_function_mask semantics.\n  [S390] Fix linker script.\n  [S390] DEBUG_PAGEALLOC support for s390.\n  [S390] cio: Add shutdown callback for ccwgroup.\n  [S390] cio: Update documentation.\n  [S390] cio: Clean up chsc response code handling.\n  [S390] cio: make sense id procedure work with partial hardware response\n"
    },
    {
      "commit": "3d412f60b71e588544e7b75861084f12aa1d7acd",
      "tree": "cd527e396da9e85dcf85e14c4fabfe29e61ff5d0",
      "parents": [
        "3098a1801f8b92575a5cd69c77d9fa94ea504dde",
        "3113e88c3cb3c0a22920b621f8e4d1f2ccc07f1e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:09:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 10:09:07 2008 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (21 commits)\n  [PKT_SCHED]: vlan tag match\n  [NET]: Add if_addrlabel.h to sanitized headers.\n  [NET] rtnetlink.c: remove no longer used functions\n  [ICMP]: Restore pskb_pull calls in receive function\n  [INET]: Fix accidentally broken inet(6)_hash_connect\u0027s port offset calculations.\n  [NET]: Remove further references to net-modules.txt\n  bluetooth rfcomm tty: destroy before tty_close()\n  bluetooth: blacklist another Broadcom BCM2035 device\n  drivers/bluetooth/btsdio.c: fix double-free\n  drivers/bluetooth/bpa10x.c: fix memleak\n  bluetooth: uninlining\n  bluetooth: hidp_process_hid_control remove unnecessary parameter dealing\n  tun: impossible to deassert IFF_ONE_QUEUE or IFF_NO_PI\n  hamradio: fix dmascc section mismatch\n  [SCTP]: Fix kernel panic while received AUTH chunk with BAD shared key identifier\n  [SCTP]: Fix kernel panic while received AUTH chunk while enabled auth\n  [IPV4]: Formatting fix for /proc/net/fib_trie.\n  [IPV6]: Fix sysctl compilation error.\n  [NET_SCHED]: Add #ifdef CONFIG_NET_EMATCH in net/sched/cls_flow.c (latest git broken build)\n  [IPV4]: Fix compile error building without CONFIG_FS_PROC\n  ...\n"
    },
    {
      "commit": "9914712e2e0f80ddcc00c928d3f7a5848d925e1e",
      "tree": "08862da0b2c7f20d920acddb5df157e17e0da234",
      "parents": [
        "488823f114a3cef58e7eb932cac977440a2a59cb",
        "bc894606e8843808c232319f69c26c18f6eaa662"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:54:10 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:54:10 2008 -0800"
      },
      "message": "Merge branch \u0027agp-patches\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6\n\n* \u0027agp-patches\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6:\n  agp: remove flush_agp_mappings calls from new flush handling code\n  intel-agp: introduce IS_I915 and do some cleanups..\n  [intel_agp] fix name for G35 chipset\n  intel-agp: fixup resource handling in flush code.\n  intel-agp: add new chipset ID\n  agp: remove unnecessary pci_dev_put\n  agp: remove uid comparison as security check\n  fix AGP warning\n  agp/intel: Add chipset flushing support for i8xx chipsets.\n  intel-agp: add chipset flushing support\n  agp: add chipset flushing support to AGP interface\n"
    },
    {
      "commit": "01ac835fdd121f36dded404af15225101f6ccee3",
      "tree": "7c147e37003fdad5525ce4b036917a29d9cdd1a2",
      "parents": [
        "2278c5ac9d39699bac44250b9c532de0c02cb16a"
      ],
      "author": {
        "name": "Daniel Walker",
        "email": "dwalker@mvista.com",
        "time": "Mon Feb 04 22:31:26 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:31 2008 -0800"
      },
      "message": "uml: LDT mutex conversion\n\nThe ldt.semaphore conforms to the new struct mutex requirments, so I converted\nit to use the new API and changed the name.\n\nSigned-off-by: Daniel Walker \u003cdwalker@mvista.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7281ff952c7b3cbefb14847460e5fe73a2d240e4",
      "tree": "f2f7b0c103b2c860f6be18a650098fca9a724197",
      "parents": [
        "438ee6798cd8bfc44da725fca846367e19d86652"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:31 2008 -0800"
      },
      "message": "uml: add back CONFIG_HZ\n\navoid-overflows-in-kernel-timec.patch makes CONFIG_HZ necessary for a\nsuccessful build.  UML lacks a definition, so this patch adds one.  It also\nchanges the hard-wired definition of HZ to CONFIG_HZ.\n\nNote: this patch is a good idea even in the absence of hpa\u0027s time fixes.\n\nCc: \"H. Peter Anvin\" \u003chpa@zytor.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a9b71b6c5473d2c1526deac0a1a207fe476f6088",
      "tree": "af124559352283f663671bb59fa6346a1cc913ad",
      "parents": [
        "00a905e6145ba200308a6a13e00248b85c600bd0"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:30 2008 -0800"
      },
      "message": "uml: get rid of syscall counters\n\nGet rid of some syscall counters which haven\u0027t been useful in ages.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0b4e273fb83bce5dd8e166a4defb16ebdd215abf",
      "tree": "18f30fe9092dacf9a7e3474a9b0d692d91962242",
      "parents": [
        "909e90d3c410b684e564729145f7c20dad887757"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:07 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: customize tlb.h\n\nCustomize the hooks in tlb.h to optimize TLB flushing some more.\n\nAdd start and end fields to tlb_gather_mmu, which are used to limit\nthe address space range scanned when a region is unmapped.\n\nThe interfaces which just free page tables, without actually changing\nmappings, don\u0027t need to cause a TLB flush.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "909e90d3c410b684e564729145f7c20dad887757",
      "tree": "31c4e5ade894f185a7eeb04ce7023cb7da6b9277",
      "parents": [
        "1adfd6095e1c654dce5a692db5aa5a2b2a8d6b0d"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:06 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: 64-bit tlb fixes\n\nSome 64-bit tlb fixes -\n\tmoved pmd_page_vaddr to pgtable.h since it\u0027s the same for both\n2-level and 3-level page tables\n\tfixed a bogus cast on pud_page_vaddr\n\tmade the address checking in update_*_range more careful\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3963333fe6767f15141ab2dc3b933721c636c212",
      "tree": "62fbec62adf1796709dfa197e12dd725911e0fc9",
      "parents": [
        "42a2b54ce8c7b9d4f418995a7950e7e2e15e52ce"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:01 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: cover stubs with a VMA\n\nGive the stubs a VMA.  This allows the removal of a truly nasty kludge to make\nsure that mm-\u003enr_ptes was correct in exit_mmap.  The underlying problem was\nalways that the stubs, which have ptes, and thus allocated a page table,\nweren\u0027t covered by a VMA.\n\nThis patch fixes that by using install_special_mapping in arch_dup_mmap and\nactivate_context to create the VMA.  The stubs have to be moved, since\nshift_arg_pages seems to assume that the stack is the only VMA present at that\npoint during exec, and uses vma_adjust to fiddle its VMA.  However, that\nextends the stub VMA by the amount removed from the stack VMA.\n\nTo avoid this problem, the stubs were moved to a different fixed location at\nthe start of the address space.\n\nThe init_stub_pte calls were moved from init_new_context to arch_dup_mmap\nbecause I was occasionally seeing arch_dup_mmap not being called, causing\nexit_mmap to die.  Rather than figure out what was really happening, I decided\nit was cleaner to just move the calls so that there\u0027s no doubt that both the\npte and VMA creation happen, no matter what.  arch_exit_mmap is used to clear\nthe stub ptes at exit time.\n\nThe STUB_* constants in as-layout.h no longer depend on UM_TASK_SIZE, that\nthat definition is removed, along with the comments complaining about gcc.\n\nBecause the stubs are no longer at the top of the address space, some care is\nneeded while flushing TLBs.  update_pte_range checks for addresses in the stub\nrange and skips them.  flush_thread now issues two unmaps, one for the range\nbefore STUB_START and one for the range after STUB_END.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42a2b54ce8c7b9d4f418995a7950e7e2e15e52ce",
      "tree": "30bcb0ea0a4ee6d5091b1b9a85589cff8b1863fc",
      "parents": [
        "b7c000cbc4f1fa7b82efa95b34f00c2adbeaa3fe"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:31:00 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:29 2008 -0800"
      },
      "message": "uml: clean up TASK_SIZE usage\n\nClean up the calculation and use of the usable address space size on the host.\n\ntask_size is gone, replaced with TASK_SIZE, which is calculated from\nCONFIG_TOP_ADDR.  get_kmem_end and set_task_sizes_skas are also gone.\n\nhost_task_size, which refers to the entire address space usable by the UML\nkernel and which may be larger than the address space usable by a UML process,\nsince that has to end on a pgdir boundary, is replaced by CONFIG_TOP_ADDR.\n\nSTACK_TOP is now TASK_SIZE minus the two stub pages.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "ca77b555c0aafa3070fbb67592abaaa1b8d31913",
      "tree": "fb0b42c68879599b65dc897153923ffadca408ab",
      "parents": [
        "655e4ed0c521dcfdbf1c5a79da971560e6733527"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: add virt_to_pte\n\nTurn um_virt_to_phys into virt_to_pte, cleaning up a horrid interface.\n\nIt\u0027s also made non-static and declared in pgtable.h because it\u0027ll be\nneeded when the stubs get a vma.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "655e4ed0c521dcfdbf1c5a79da971560e6733527",
      "tree": "8b0cf794410c9e632b9ee65b8e0750621d9c96ce",
      "parents": [
        "a5a678c80beac4d163babda243a27eeb9c89bd89"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: fix page table data sizes\n\nGet the sizes of various pieces of data right when using three-level\npage tables.  pgd and pmd entries remain at 32 bits in a 32-bit\ncompilation because page tables will remain in low memory.  So,\nPGDIR_SHIFT, the PTRS_PER_* values, set_pud, set_pmd are conditional\non 64BIT.\n\nMore use of phys_t is made when there are physical memory addresses\nfloating around.\n\nObCheckpatchViolationJustification - the new typedef is an alternate\ndefinition of pmd_t, which I can\u0027t really live without.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a5a678c80beac4d163babda243a27eeb9c89bd89",
      "tree": "abf94fe11f82a642727fcbddceee647c7effc5f2",
      "parents": [
        "009ec2a915ba52f6b647c4076f4a2e259cba85aa"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:54 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: current.h cleanup\n\nTidy current-related stuff.  There was a comment in current.h saying\nthat current_thread was obsolete, so this patch turns all instances of\ncurrent_thread into current_thread_info().  There\u0027s some simplifying\nof the result in arch/um/sys-i386/signal.c.\n\ncurrent.h and thread_info also get style cleanups.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "009ec2a915ba52f6b647c4076f4a2e259cba85aa",
      "tree": "fd2d805f13d8ea6345e03981079c9a9e1424a18c",
      "parents": [
        "8192ab42bf60e1e9b7efa046990e9cc5e4a95cf4"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:53 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: style cleanup\n\nStyle fixes in elf-i386.h and arch/um/kernel/mem.c.\n      update the copyright\n      get rid of an emacs formatting comment\n      some formatting fixes\n      inclusion trimming\n      whitespace fixes\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8192ab42bf60e1e9b7efa046990e9cc5e4a95cf4",
      "tree": "f61fee85b0eccbc055ec8c5a98932b20eca64bf1",
      "parents": [
        "9157f90f08f7db3188cd06971f41cb2ba5646e57"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:53 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: header untangling\n\nUntangle UML headers somewhat and add some includes where they were\nneeded explicitly, but gotten accidentally via some other header.\n\narch/um/include/um_uaccess.h loses asm/fixmap.h because it uses no\nfixmap stuff and gains elf.h, because it needs FIXADDR_USER_*, and\narchsetjmp.h, because it needs jmp_buf.\n\npmd_alloc_one is uninlined because it needs mm_struct, and that\u0027s\ninconvenient to provide in asm-um/pgtable-3level.h.\n\nelf_core_copy_fpregs is also uninlined from elf-i386.h and\nelf-x86_64.h, which duplicated the code anyway, to\narch/um/kernel/process.c, so that the reference to current_thread\ndoesn\u0027t pull sched.h or anything related into asm/elf.h.\n\narch/um/sys-i386/ldt.c, arch/um/kernel/tlb.c and\narch/um/kernel/skas/uaccess.c got sched.h because they dereference\ntask_structs.  Its includes of linux and asm headers got turned from\n\"\" to \u003c\u003e.\n\narch/um/sys-i386/bug.c gets asm/errno.h because it needs errno\nconstants.\n\nasm/elf-i386 gets asm/user.h because it needs user_regs_struct.\n\nasm/fixmap.h gets page.h because it needs PAGE_SIZE and PAGE_MASK and\nsystem.h for BUG_ON.\n\nasm/pgtable doesn\u0027t need sched.h.\n\nasm/processor-generic.h defined mm_segment_t, but didn\u0027t use it.  So,\nthat definition is moved to uaccess.h, which defines a bunch of\nmm_segment_t-related stuff.  thread_info.h uses mm_segment_t, and\nincludes uaccess.h, which causes a recursion.  So, the definition is\nplaced above the include of thread_info. in uaccess.h.  thread_info.h\nalso gets page.h because it needs PAGE_SIZE.\n\nObCheckpatchViolationJustification - I\u0027m not adding a typedef; I\u0027m\nmoving mm_segment_t from one place to another.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9157f90f08f7db3188cd06971f41cb2ba5646e57",
      "tree": "f8a546798ec49d973117b012973b1af38014bd2b",
      "parents": [
        "b8bec829c90d45a2d115a52f3a928ce841afc3d4"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:52 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:28 2008 -0800"
      },
      "message": "uml: move um_virt_to_phys\n\nThis patchset makes UML build and run with three-level page tables on\n32-bit hosts.  This is an uncommon use case, but the code here needed\nfixing and cleaning up, so 32-bit three-level pages tables were tested\nto make sure the changes are good.\n\nPatch 1 - code movement\nPatch 2 - header untangling\nPatch 3 - style fixups in files affected so far\nPatch 4 - clean up use of current.h\nPatch 5 - fix sizes of types that are different between 2 and 3-level\n\tpage tables - three-level page table support should build at\n\tthis point\nPatch 6 - tidy (i.e. eliminate much of) the code that figures out how\n\tbig the address space is\nPatch 7 - change um_virt_to_phys into virt_to_pte, clean its\n\tinterface, and clean its (so far) one caller\nPatch 8 - the stub pages are covered with a VMA, allowing some nasty\n\tcode to be thrown out - three-level page tables now work\n\nThis patch:\n\num_virt_to_phys only has one user, so it can be moved to the same file\nand made static.  Its declarations in pgtable.h and ksyms.c are also\ngone.\n\ncurrent_cmd was another apparent user, but it itself isn\u0027t used, so it\nis deleted.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "300ecf59c0ca2c09fb7fde7dff986a7306e95361",
      "tree": "b4706c9c5465204212fd221e9fa72ce1c507e734",
      "parents": [
        "d83ecf083a2163705f5ebcede4637a955eb7b964"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:26 2008 -0800"
      },
      "message": "UML - Fix build in 2.6.24-rc2-mm1\n\nThe earlier pgtable.h tidying patch made things a bit too tidy.  Add\nback a header which is needed in VMALLOC_START and friend.  Also add\nback a definition of pmd_page_vaddr, which is needed on x86_64.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d83ecf083a2163705f5ebcede4637a955eb7b964",
      "tree": "3ab72f51a15b8accbe50cbc3dc953f98b5365120",
      "parents": [
        "edea138584d7586a3b93b6d5ab5ec021d18e11e9"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:26 2008 -0800"
      },
      "message": "uml: tidy pgtable.h\n\nLarge pieces of include/asm/pgtable.h were unused cruft.\n\nThis uncovered arch/um/kernel/trap.c needing skas.h in order to get\nptrace_faultinfo.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "b2cf770758cfd9dceb62afcb86e56e96ff37234a",
      "tree": "8372d9c183d94c2489d581bbfda5cd115df162ea",
      "parents": [
        "c11274655558e72d8d4a598c0077874c094d97d5"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:37 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:25 2008 -0800"
      },
      "message": "uml: get rid of asmlinkage\n\nGet rid of asmlinkage and remove some old cruft from asm/linkage.h.\n\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c11274655558e72d8d4a598c0077874c094d97d5",
      "tree": "c7d13b5aeb4994a1c03ec6a5edd723ba06fd94da",
      "parents": [
        "c9a3072d13e4b8a6549ecc1db6390a55c7ee2ddf"
      ],
      "author": {
        "name": "Jeff Dike",
        "email": "jdike@addtoit.com",
        "time": "Mon Feb 04 22:30:36 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:25 2008 -0800"
      },
      "message": "uml: implement get_wchan\n\nImplement get_wchan - the algorithm is similar to x86.  It starts with the\nstack pointer of the process in question and looks above that for addresses\nthat are kernel text.  The second one which isn\u0027t in the scheduler is the one\nthat\u0027s returned.  The first one is ignored because that will be UML\u0027s own\ncontext switching routine.\n\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4d18de45fa921600e1b3770c3a7cb106ab48cd9d",
      "tree": "f7d62675120ce55c910edc0681f6cbaa7397ed30",
      "parents": [
        "99c9f502cb3498b02b1e5df60c9ea0ee2e535373"
      ],
      "author": {
        "name": "Karol Swietlicki",
        "email": "magotari@gmail.com",
        "time": "Mon Feb 04 22:30:35 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:24 2008 -0800"
      },
      "message": "uml: remove xmm checking on x86\n\nThis patch removes some code which ran at every boot, but does not seem to do\nanything anymore.  Please test.  It works for me but mistakes can happen.\n\nSigned-off-by: Karol Swietlicki \u003cmagotari@gmail.com\u003e\nSigned-off-by: Jeff Dike \u003cjdike@linux.intel.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "747646a4d9d9ddfc7952f8c6d25ea1f323e689a0",
      "tree": "b4b1aca1ed123361b35beb5d76a94009d580cbb6",
      "parents": [
        "6d9f4c5cfb6084c16a800e8a2ca9db8d0859611c"
      ],
      "author": {
        "name": "Jesper Nilsson",
        "email": "jesper.nilsson@axis.com",
        "time": "Mon Feb 04 22:30:33 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:24 2008 -0800"
      },
      "message": "cris: remove unused __dummy, CONST_ADDR and ADDR from bitops.h\n\nThis is very old code, it hasn\u0027t changed since 2001 and it is not used\nanywhere.  Noticed by Clemens Koller.\n\nSigned-off-by: Jesper Nilsson \u003cjesper.nilsson@axis.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "57dfee7c3f1fcac24e986b69bdfdccc8ea025813",
      "tree": "405d4e39233bc593b0d975c869d8684c15ccd043",
      "parents": [
        "00bf59ca9bfe4085e6ee546128a71b82d061ab04"
      ],
      "author": {
        "name": "Finn Thain",
        "email": "fthain@telegraphics.com.au",
        "time": "Mon Feb 04 22:30:30 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:24 2008 -0800"
      },
      "message": "mac68k: add nubus card definitions and a typo fix\n\nAdd some new card definitions and fix a typo (from Eugen Paiuc).\n\nSigned-off-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "00bf59ca9bfe4085e6ee546128a71b82d061ab04",
      "tree": "eb513f442c59eed55e44741f8f1f5cb7a3cc258f",
      "parents": [
        "eb4da4cec30309e3b3d584616e32318cc8f6d63c"
      ],
      "author": {
        "name": "Finn Thain",
        "email": "fthain@telegraphics.com.au",
        "time": "Mon Feb 04 22:30:29 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:24 2008 -0800"
      },
      "message": "mac68k: remove dead code\n\nSigned-off-by: Finn Thain \u003cfthain@telegraphics.com.au\u003e\nSigned-off-by: Geert Uytterhoeven \u003cgeert@linux-m68k.org\u003e\nCc: Roman Zippel \u003czippel@linux-m68k.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "fa23f5cce8cda2095013afc837ccf74b352f9f7b",
      "tree": "bdb22c6966b9e60eb90c97086f3ceed453223f97",
      "parents": [
        "a41e3dc4060cca2599afa14fbd4c745763746ba8"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 04 22:30:14 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:23 2008 -0800"
      },
      "message": "leds: add possibility to remove leds classdevs during suspend/resume\n\nMake it possible to unregister a led classdev object in a safe way during a\nsuspend/resume cycle.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "a41e3dc4060cca2599afa14fbd4c745763746ba8",
      "tree": "c97d189602b6564054f348dbfc2c865baafecd96",
      "parents": [
        "533354d4ac48b7df99f18f952e5d51c3f59ba56c"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 04 22:30:13 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:23 2008 -0800"
      },
      "message": "HWRNG: add possibility to remove hwrng devices during suspend/resume\n\nMake it possible to unregister a Hardware Random Number Generator\ndevice object in a safe way during a suspend/resume cycle.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nAcked-by: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "533354d4ac48b7df99f18f952e5d51c3f59ba56c",
      "tree": "d1d5616e39d58ce8f27127901d43d4b0b0f69fa5",
      "parents": [
        "f011e2e2df3393c16b0fdc48e855e909b7e021ee"
      ],
      "author": {
        "name": "Rafael J. Wysocki",
        "email": "rjw@sisk.pl",
        "time": "Mon Feb 04 22:30:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:23 2008 -0800"
      },
      "message": "Misc: Add possibility to remove misc devices during suspend/resume\n\nMake it possible to unregister a misc device object in a safe way during a\nsuspend/resume cycle.\n\nSigned-off-by: Rafael J. Wysocki \u003crjw@sisk.pl\u003e\nCc: Michael Buesch \u003cmb@bu3sch.de\u003e\nCc: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Alan Stern \u003cstern@rowland.harvard.edu\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Greg KH \u003cgreg@kroah.com\u003e\nCc: Kay Sievers \u003ckay.sievers@vrfy.org\u003e\nCc: Richard Purdie \u003crpurdie@rpsys.net\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f011e2e2df3393c16b0fdc48e855e909b7e021ee",
      "tree": "1ad56011597c739336d7068c8182fd9cfdddad5b",
      "parents": [
        "d82b35186eaa816267f044bd70cc0acb3c7971a3"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Mon Feb 04 22:30:09 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "latency.c: use QoS infrastructure\n\nReplace latency.c use with pm_qos_params use.\n\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "d82b35186eaa816267f044bd70cc0acb3c7971a3",
      "tree": "e8de56c122fd8040086e974895afbb8299045c0f",
      "parents": [
        "4ef7229ffa93695e346d510b871452811509ea65"
      ],
      "author": {
        "name": "Mark Gross",
        "email": "mgross@linux.intel.com",
        "time": "Mon Feb 04 22:30:08 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "pm qos infrastructure and interface\n\nThe following patch is a generalization of the latency.c implementation done\nby Arjan last year.  It provides infrastructure for more than one parameter,\nand exposes a user mode interface for processes to register pm_qos\nexpectations of processes.\n\nThis interface provides a kernel and user mode interface for registering\nperformance expectations by drivers, subsystems and user space applications on\none of the parameters.\n\nCurrently we have {cpu_dma_latency, network_latency, network_throughput} as\nthe initial set of pm_qos parameters.\n\nThe infrastructure exposes multiple misc device nodes one per implemented\nparameter.  The set of parameters implement is defined by pm_qos_power_init()\nand pm_qos_params.h.  This is done because having the available parameters\nbeing runtime configurable or changeable from a driver was seen as too easy to\nabuse.\n\nFor each parameter a list of performance requirements is maintained along with\nan aggregated target value.  The aggregated target value is updated with\nchanges to the requirement list or elements of the list.  Typically the\naggregated target value is simply the max or min of the requirement values\nheld in the parameter list elements.\n\n\u003eFrom kernel mode the use of this interface is simple:\n\npm_qos_add_requirement(param_id, name, target_value):\n\n  Will insert a named element in the list for that identified PM_QOS\n  parameter with the target value.  Upon change to this list the new target is\n  recomputed and any registered notifiers are called only if the target value\n  is now different.\n\npm_qos_update_requirement(param_id, name, new_target_value):\n\n  Will search the list identified by the param_id for the named list element\n  and then update its target value, calling the notification tree if the\n  aggregated target is changed.  with that name is already registered.\n\npm_qos_remove_requirement(param_id, name):\n\n  Will search the identified list for the named element and remove it, after\n  removal it will update the aggregate target and call the notification tree\n  if the target was changed as a result of removing the named requirement.\n\n\u003eFrom user mode:\n\n  Only processes can register a pm_qos requirement.  To provide for\n  automatic cleanup for process the interface requires the process to register\n  its parameter requirements in the following way:\n\n  To register the default pm_qos target for the specific parameter, the\n  process must open one of /dev/[cpu_dma_latency, network_latency,\n  network_throughput]\n\n  As long as the device node is held open that process has a registered\n  requirement on the parameter.  The name of the requirement is\n  \"process_\u003cPID\u003e\" derived from the current-\u003epid from within the open system\n  call.\n\n  To change the requested target value the process needs to write a s32\n  value to the open device node.  This translates to a\n  pm_qos_update_requirement call.\n\n  To remove the user mode request for a target value simply close the device\n  node.\n\n[akpm@linux-foundation.org: fix warnings]\n[akpm@linux-foundation.org: fix build]\n[akpm@linux-foundation.org: fix build again]\n[akpm@linux-foundation.org: coding-style fixes]\nSigned-off-by: mark gross \u003cmgross@linux.intel.com\u003e\nCc: \"John W. Linville\" \u003clinville@tuxdriver.com\u003e\nCc: Len Brown \u003clenb@kernel.org\u003e\nCc: Jaroslav Kysela \u003cperex@suse.cz\u003e\nCc: Takashi Iwai \u003ctiwai@suse.de\u003e\nCc: Arjan van de Ven \u003carjan@infradead.org\u003e\nCc: Venki Pallipadi \u003cvenkatesh.pallipadi@intel.com\u003e\nCc: Adam Belay \u003cabelay@novell.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "4ef7229ffa93695e346d510b871452811509ea65",
      "tree": "052adef3a8cc1e8d502525f3355e99d5e8d9dcda",
      "parents": [
        "47a460d5a307e639d6c9cdf9bb4857e2f5f3cb76"
      ],
      "author": {
        "name": "Adrian Bunk",
        "email": "bunk@kernel.org",
        "time": "Mon Feb 04 22:30:06 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "make kernel_shutdown_prepare() static\n\nkernel_shutdown_prepare() can now become static.\n\nSigned-off-by: Adrian Bunk \u003cbunk@kernel.org\u003e\nAcked-by: Pavel Machek \u003cpavel@ucw.cz\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "cbed6c6e0f7a52859fd0207ef3ffcf4bfffdbf95",
      "tree": "ff21f3c6c889965a4856f4d3ed9536d3dce7b007",
      "parents": [
        "6d6f8d52fd0ff5d3660368232f71c3224d7508e1"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 04 22:30:05 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:22 2008 -0800"
      },
      "message": "alpha: fix warning by fixing flush_tlb_kernel_range()\n\nmm/vmalloc.c: In function \u0027unmap_kernel_range\u0027:\nmm/vmalloc.c:75: warning: unused variable \u0027start\u0027\n\nMacros are so horrid.\n\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "2f78dcfd30955a48a2e738d08e4001ebd0e8402c",
      "tree": "968cd637194080813fee148df4176b7b50ff0e78",
      "parents": [
        "fd2e2633c208e111348c9f84fd7eeb9c844aca02"
      ],
      "author": {
        "name": "Samuel Thibault",
        "email": "samuel.thibault@citrix.com",
        "time": "Mon Feb 04 22:30:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:21 2008 -0800"
      },
      "message": "Alpha doesn\u0027t use socketcall\n\nAlpha doesn\u0027t use socketcall and doesn\u0027t provide __NR_socketcall.\n\nSigned-off-by: Samuel Thibault \u003csamuel.thibault@citrix.com\u003e\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "26a6e661b118b95422ccfcd10c9997db5967df58",
      "tree": "949c2a205da22372c603f125e8d1d7c1eaaa67dc",
      "parents": [
        "e820ce72d3aaadb8b53455cbdf213d3439f6c280"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 04 22:30:02 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:21 2008 -0800"
      },
      "message": "alpha: atomic_add_return() should return int\n\nPrevents stuff like\n\ndrivers/crypto/hifn_795x.c:2443: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027long int\u0027\ndrivers/crypto/hifn_795x.c:2443: warning: format \u0027%d\u0027 expects type \u0027int\u0027, but argument 4 has type \u0027long int\u0027\n\n(at least).\n\nCc: Richard Henderson \u003crth@twiddle.net\u003e\nCc: Ivan Kokshaysky \u003cink@jurassic.park.msu.ru\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "c155f3f9c54c602823c3970ec8a465ec3f9c2017",
      "tree": "c747e5e5c90f8705bcddcdb22a0bb90452d0e891",
      "parents": [
        "16791963ff7dd6a108251f5fa4b273cf1ffe531f"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "olsajiri@gmail.com",
        "time": "Mon Feb 04 22:29:58 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:21 2008 -0800"
      },
      "message": "m68knomu: remove dead config symbols from m68knomu code\n\nremove dead config symbols from m68knommu code\n\nSigned-off-by: Jiri Olsa \u003colsajiri@gmail.com\u003e\nAcked-by: Greg Ungerer \u003cgerg@snapgear.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8c5900b2d669c7aac1e5b3e8bb8e331a0e6cff61",
      "tree": "a274e1869e45286f9af45ff631375ca05416cbd6",
      "parents": [
        "82b12e232d2a71f566dca48df4ae4548e6d8d53d"
      ],
      "author": {
        "name": "Jiri Olsa",
        "email": "olsajiri@gmail.com",
        "time": "Mon Feb 04 22:29:55 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "frv: remove dead config symbol from FRV code\n\nRemove dead config symbol from FRV code.\n\nSigned-off-by: Jiri Olsa \u003colsajiri@gmail.com\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "82b12e232d2a71f566dca48df4ae4548e6d8d53d",
      "tree": "a727e6dbfe1764e0f684ea8248384e9ad9fdc6b9",
      "parents": [
        "7038220aa511131f348018b85df172a21476fef9"
      ],
      "author": {
        "name": "Robert P. J. Day",
        "email": "rpjday@crashcourse.ca",
        "time": "Mon Feb 04 22:29:54 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "FRV: move DMA macros to scatterlist.h for consistency.\n\nTo be consistent with other architectures, these two DMA macros should\nbe defined in scatterlist.h as opposed to dma-mapping.h\n\nSigned-off-by: Robert P. J. Day \u003crpjday@crashcourse.ca\u003e\nAcked-by: David Howells \u003cdhowells@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e114e473771c848c3cfec05f0123e70f1cdbdc99",
      "tree": "933b840f3ccac6860da56291c742094f9b5a20cb",
      "parents": [
        "eda61d32e8ad1d9102872f9a0abf3344bf9c5e67"
      ],
      "author": {
        "name": "Casey Schaufler",
        "email": "casey@schaufler-ca.com",
        "time": "Mon Feb 04 22:29:50 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "Smack: Simplified Mandatory Access Control Kernel\n\nSmack is the Simplified Mandatory Access Control Kernel.\n\nSmack implements mandatory access control (MAC) using labels\nattached to tasks and data containers, including files, SVIPC,\nand other tasks. Smack is a kernel based scheme that requires\nan absolute minimum of application support and a very small\namount of configuration data.\n\nSmack uses extended attributes and\nprovides a set of general mount options, borrowing technics used\nelsewhere. Smack uses netlabel for CIPSO labeling. Smack provides\na pseudo-filesystem smackfs that is used for manipulation of\nsystem Smack attributes.\n\nThe patch, patches for ls and sshd, a README, a startup script,\nand x86 binaries for ls and sshd are also available on\n\n    http://www.schaufler-ca.com\n\nDevelopment has been done using Fedora Core 7 in a virtual machine\nenvironment and on an old Sony laptop.\n\nSmack provides mandatory access controls based on the label attached\nto a task and the label attached to the object it is attempting to\naccess. Smack labels are deliberately short (1-23 characters) text\nstrings. Single character labels using special characters are reserved\nfor system use. The only operation applied to Smack labels is equality\ncomparison. No wildcards or expressions, regular or otherwise, are\nused. Smack labels are composed of printable characters and may not\ninclude \"/\".\n\nA file always gets the Smack label of the task that created it.\n\nSmack defines and uses these labels:\n\n    \"*\" - pronounced \"star\"\n    \"_\" - pronounced \"floor\"\n    \"^\" - pronounced \"hat\"\n    \"?\" - pronounced \"huh\"\n\nThe access rules enforced by Smack are, in order:\n\n1. Any access requested by a task labeled \"*\" is denied.\n2. A read or execute access requested by a task labeled \"^\"\n   is permitted.\n3. A read or execute access requested on an object labeled \"_\"\n   is permitted.\n4. Any access requested on an object labeled \"*\" is permitted.\n5. Any access requested by a task on an object with the same\n   label is permitted.\n6. Any access requested that is explicitly defined in the loaded\n   rule set is permitted.\n7. Any other access is denied.\n\nRules may be explicitly defined by writing subject,object,access\ntriples to /smack/load.\n\nSmack rule sets can be easily defined that describe Bell\u0026LaPadula\nsensitivity, Biba integrity, and a variety of interesting\nconfigurations. Smack rule sets can be modified on the fly to\naccommodate changes in the operating environment or even the time\nof day.\n\nSome practical use cases:\n\nHierarchical levels. The less common of the two usual uses\nfor MLS systems is to define hierarchical levels, often\nunclassified, confidential, secret, and so on. To set up smack\nto support this, these rules could be defined:\n\n   C        Unclass rx\n   S        C       rx\n   S        Unclass rx\n   TS       S       rx\n   TS       C       rx\n   TS       Unclass rx\n\nA TS process can read S, C, and Unclass data, but cannot write it.\nAn S process can read C and Unclass. Note that specifying that\nTS can read S and S can read C does not imply TS can read C, it\nhas to be explicitly stated.\n\nNon-hierarchical categories. This is the more common of the\nusual uses for an MLS system. Since the default rule is that a\nsubject cannot access an object with a different label no\naccess rules are required to implement compartmentalization.\n\nA case that the Bell \u0026 LaPadula policy does not allow is demonstrated\nwith this Smack access rule:\n\nA case that Bell\u0026LaPadula does not allow that Smack does:\n\n    ESPN    ABC   r\n    ABC     ESPN  r\n\nOn my portable video device I have two applications, one that\nshows ABC programming and the other ESPN programming. ESPN wants\nto show me sport stories that show up as news, and ABC will\nonly provide minimal information about a sports story if ESPN\nis covering it. Each side can look at the other\u0027s info, neither\ncan change the other. Neither can see what FOX is up to, which\nis just as well all things considered.\n\nAnother case that I especially like:\n\n    SatData Guard   w\n    Guard   Publish w\n\nA program running with the Guard label opens a UDP socket and\naccepts messages sent by a program running with a SatData label.\nThe Guard program inspects the message to ensure it is wholesome\nand if it is sends it to a program running with the Publish label.\nThis program then puts the information passed in an appropriate\nplace. Note that the Guard program cannot write to a Publish\nfile system object because file system semanitic require read as\nwell as write.\n\nThe four cases (categories, levels, mutual read, guardbox) here\nare all quite real, and problems I\u0027ve been asked to solve over\nthe years. The first two are easy to do with traditonal MLS systems\nwhile the last two you can\u0027t without invoking privilege, at least\nfor a while.\n\nSigned-off-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nCc: Joshua Brindle \u003cmethod@manicmethod.com\u003e\nCc: Paul Moore \u003cpaul.moore@hp.com\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: \"Ahmed S. Darwish\" \u003cdarwish.07@gmail.com\u003e\nCc: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "eda61d32e8ad1d9102872f9a0abf3344bf9c5e67",
      "tree": "d1c11a47c97b3f29d54021cd4aa9c0b8963ed0c8",
      "parents": [
        "97829955ad291acec1d8b94e9911b3ceb1118bb1"
      ],
      "author": {
        "name": "Paul Moore",
        "email": "paul.moore@hp.com",
        "time": "Mon Feb 04 22:29:47 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "NetLabel: introduce a new kernel configuration API for NetLabel\n\nAdd a new set of configuration functions to the NetLabel/LSM API so that\nLSMs can perform their own configuration of the NetLabel subsystem without\nrelying on assistance from userspace.\n\nSigned-off-by: Paul Moore \u003cpaul.moore@hp.com\u003e\nSigned-off-by: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nReviewed-by: James Morris \u003cjmorris@namei.org\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3b7391de67da515c91f48aa371de77cb6cc5c07e",
      "tree": "22b9f5d9d1c36b374eb5765219aca3c7e1f23486",
      "parents": [
        "46c383cc4530ccc438cb325e92e11eb21dd3d4fc"
      ],
      "author": {
        "name": "Serge E. Hallyn",
        "email": "serue@us.ibm.com",
        "time": "Mon Feb 04 22:29:45 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "capabilities: introduce per-process capability bounding set\n\nThe capability bounding set is a set beyond which capabilities cannot grow.\n Currently cap_bset is per-system.  It can be manipulated through sysctl,\nbut only init can add capabilities.  Root can remove capabilities.  By\ndefault it includes all caps except CAP_SETPCAP.\n\nThis patch makes the bounding set per-process when file capabilities are\nenabled.  It is inherited at fork from parent.  Noone can add elements,\nCAP_SETPCAP is required to remove them.\n\nOne example use of this is to start a safer container.  For instance, until\ndevice namespaces or per-container device whitelists are introduced, it is\nbest to take CAP_MKNOD away from a container.\n\nThe bounding set will not affect pP and pE immediately.  It will only\naffect pP\u0027 and pE\u0027 after subsequent exec()s.  It also does not affect pI,\nand exec() does not constrain pI\u0027.  So to really start a shell with no way\nof regain CAP_MKNOD, you would do\n\n\tprctl(PR_CAPBSET_DROP, CAP_MKNOD);\n\tcap_t cap \u003d cap_get_proc();\n\tcap_value_t caparray[1];\n\tcaparray[0] \u003d CAP_MKNOD;\n\tcap_set_flag(cap, CAP_INHERITABLE, 1, caparray, CAP_DROP);\n\tcap_set_proc(cap);\n\tcap_free(cap);\n\nThe following test program will get and set the bounding\nset (but not pI).  For instance\n\n\t./bset get\n\t\t(lists capabilities in bset)\n\t./bset drop cap_net_raw\n\t\t(starts shell with new bset)\n\t\t(use capset, setuid binary, or binary with\n\t\tfile capabilities to try to increase caps)\n\n************************************************************\ncap_bound.c\n************************************************************\n #include \u003csys/prctl.h\u003e\n #include \u003clinux/capability.h\u003e\n #include \u003csys/types.h\u003e\n #include \u003cunistd.h\u003e\n #include \u003cstdio.h\u003e\n #include \u003cstdlib.h\u003e\n #include \u003cstring.h\u003e\n\n #ifndef PR_CAPBSET_READ\n #define PR_CAPBSET_READ 23\n #endif\n\n #ifndef PR_CAPBSET_DROP\n #define PR_CAPBSET_DROP 24\n #endif\n\nint usage(char *me)\n{\n\tprintf(\"Usage: %s get\\n\", me);\n\tprintf(\"       %s drop \u003ccapability\u003e\\n\", me);\n\treturn 1;\n}\n\n #define numcaps 32\nchar *captable[numcaps] \u003d {\n\t\"cap_chown\",\n\t\"cap_dac_override\",\n\t\"cap_dac_read_search\",\n\t\"cap_fowner\",\n\t\"cap_fsetid\",\n\t\"cap_kill\",\n\t\"cap_setgid\",\n\t\"cap_setuid\",\n\t\"cap_setpcap\",\n\t\"cap_linux_immutable\",\n\t\"cap_net_bind_service\",\n\t\"cap_net_broadcast\",\n\t\"cap_net_admin\",\n\t\"cap_net_raw\",\n\t\"cap_ipc_lock\",\n\t\"cap_ipc_owner\",\n\t\"cap_sys_module\",\n\t\"cap_sys_rawio\",\n\t\"cap_sys_chroot\",\n\t\"cap_sys_ptrace\",\n\t\"cap_sys_pacct\",\n\t\"cap_sys_admin\",\n\t\"cap_sys_boot\",\n\t\"cap_sys_nice\",\n\t\"cap_sys_resource\",\n\t\"cap_sys_time\",\n\t\"cap_sys_tty_config\",\n\t\"cap_mknod\",\n\t\"cap_lease\",\n\t\"cap_audit_write\",\n\t\"cap_audit_control\",\n\t\"cap_setfcap\"\n};\n\nint getbcap(void)\n{\n\tint comma\u003d0;\n\tunsigned long i;\n\tint ret;\n\n\tprintf(\"i know of %d capabilities\\n\", numcaps);\n\tprintf(\"capability bounding set:\");\n\tfor (i\u003d0; i\u003cnumcaps; i++) {\n\t\tret \u003d prctl(PR_CAPBSET_READ, i);\n\t\tif (ret \u003c 0)\n\t\t\tperror(\"prctl\");\n\t\telse if (ret\u003d\u003d1)\n\t\t\tprintf(\"%s%s\", (comma++) ? \", \" : \" \", captable[i]);\n\t}\n\tprintf(\"\\n\");\n\treturn 0;\n}\n\nint capdrop(char *str)\n{\n\tunsigned long i;\n\n\tint found\u003d0;\n\tfor (i\u003d0; i\u003cnumcaps; i++) {\n\t\tif (strcmp(captable[i], str) \u003d\u003d 0) {\n\t\t\tfound\u003d1;\n\t\t\tbreak;\n\t\t}\n\t}\n\tif (!found)\n\t\treturn 1;\n\tif (prctl(PR_CAPBSET_DROP, i)) {\n\t\tperror(\"prctl\");\n\t\treturn 1;\n\t}\n\treturn 0;\n}\n\nint main(int argc, char *argv[])\n{\n\tif (argc\u003c2)\n\t\treturn usage(argv[0]);\n\tif (strcmp(argv[1], \"get\")\u003d\u003d0)\n\t\treturn getbcap();\n\tif (strcmp(argv[1], \"drop\")!\u003d0 || argc\u003c3)\n\t\treturn usage(argv[0]);\n\tif (capdrop(argv[2])) {\n\t\tprintf(\"unknown capability\\n\");\n\t\treturn 1;\n\t}\n\treturn execl(\"/bin/bash\", \"/bin/bash\", NULL);\n}\n************************************************************\n\n[serue@us.ibm.com: fix typo]\nSigned-off-by: Serge E. Hallyn \u003cserue@us.ibm.com\u003e\nSigned-off-by: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003ea\nSigned-off-by: \"Serge E. Hallyn\" \u003cserue@us.ibm.com\u003e\nTested-by: Jiri Slaby \u003cjirislaby@gmail.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "46c383cc4530ccc438cb325e92e11eb21dd3d4fc",
      "tree": "882b84078780844dffa3fc107adf2a053a25cc7f",
      "parents": [
        "e338d263a76af78fe8f38a72131188b58fceb591"
      ],
      "author": {
        "name": "Andrew Morgan",
        "email": "andrew@nagrom.org",
        "time": "Mon Feb 04 22:29:43 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "Remove unnecessary include from include/linux/capability.h\n\nKaiGai Kohei observed that this line in the linux header is not needed.\n\nSigned-off-by: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nCc: KaiGai Kohei \u003ckaigai@kaigai.gr.jp\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "e338d263a76af78fe8f38a72131188b58fceb591",
      "tree": "f3f046fc6fd66de43de7191830f0daf3bc4ec8eb",
      "parents": [
        "8f6936f4d29aa14e54a2470b954a2e1f96322988"
      ],
      "author": {
        "name": "Andrew Morgan",
        "email": "morgan@kernel.org",
        "time": "Mon Feb 04 22:29:42 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "Add 64-bit capability support to the kernel\n\nThe patch supports legacy (32-bit) capability userspace, and where possible\ntranslates 32-bit capabilities to/from userspace and the VFS to 64-bit\nkernel space capabilities.  If a capability set cannot be compressed into\n32-bits for consumption by user space, the system call fails, with -ERANGE.\n\nFWIW libcap-2.00 supports this change (and earlier capability formats)\n\n http://www.kernel.org/pub/linux/libs/security/linux-privs/kernel-2.6/\n\n[akpm@linux-foundation.org: coding-syle fixes]\n[akpm@linux-foundation.org: use get_task_comm()]\n[ezk@cs.sunysb.edu: build fix]\n[akpm@linux-foundation.org: do not initialise statics to 0 or NULL]\n[akpm@linux-foundation.org: unused var]\n[serue@us.ibm.com: export __cap_ symbols]\nSigned-off-by: Andrew G. Morgan \u003cmorgan@kernel.org\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nSigned-off-by: Erez Zadok \u003cezk@cs.sunysb.edu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8f6936f4d29aa14e54a2470b954a2e1f96322988",
      "tree": "63e1bca33b783cf819b356f3ffd45cfe7b226654",
      "parents": [
        "4bea58053f206be9a89ca35850f9ad295dac2042"
      ],
      "author": {
        "name": "Andrew Morton",
        "email": "akpm@linux-foundation.org",
        "time": "Mon Feb 04 22:29:41 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "revert \"capabilities: clean up file capability reading\"\n\nRevert b68680e4731abbd78863063aaa0dca2a6d8cc723 to make way for the next\npatch: \"Add 64-bit capability support to the kernel\".\n\nWe want to keep the vfs_cap_data.data[] structure, using two \u0027data\u0027s for\n64-bit caps (and later three for 96-bit caps), whereas\nb68680e4731abbd78863063aaa0dca2a6d8cc723 had gotten rid of the \u0027data\u0027 struct\nmade its members inline.\n\nThe 64-bit caps patch keeps the stack abuse fix at get_file_caps(), which was\nthe more important part of that patch.\n\n[akpm@linux-foundation.org: coding-style fixes]\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nCc: James Morris \u003cjmorris@namei.org\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nCc: Andrew Morgan \u003cmorgan@kernel.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "42492594043d621a7910ff5877c3eb9202870b45",
      "tree": "9188d112c019a189606847dc1d90ccc63c1bacf2",
      "parents": [
        "3729145821e3088a0c3c4183037fde356204bf97"
      ],
      "author": {
        "name": "David P. Quigley",
        "email": "dpquigl@tycho.nsa.gov",
        "time": "Mon Feb 04 22:29:39 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:20 2008 -0800"
      },
      "message": "VFS/Security: Rework inode_getsecurity and callers to return resulting buffer\n\nThis patch modifies the interface to inode_getsecurity to have the function\nreturn a buffer containing the security blob and its length via parameters\ninstead of relying on the calling function to give it an appropriately sized\nbuffer.\n\nSecurity blobs obtained with this function should be freed using the\nrelease_secctx LSM hook.  This alleviates the problem of the caller having to\nguess a length and preallocate a buffer for this function allowing it to be\nused elsewhere for Labeled NFS.\n\nThe patch also removed the unused err parameter.  The conversion is similar to\nthe one performed by Al Viro for the security_getprocattr hook.\n\nSigned-off-by: David P. Quigley \u003cdpquigl@tycho.nsa.gov\u003e\nCc: Stephen Smalley \u003csds@tycho.nsa.gov\u003e\nCc: Chris Wright \u003cchrisw@sous-sol.org\u003e\nAcked-by: James Morris \u003cjmorris@namei.org\u003e\nAcked-by: Serge Hallyn \u003cserue@us.ibm.com\u003e\nCc: Casey Schaufler \u003ccasey@schaufler-ca.com\u003e\nCc: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nCc: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "8bc3be2751b4f74ab90a446da1912fd8204d53f7",
      "tree": "2bc514025a906203244d98de70fb6bd87f3ac9ac",
      "parents": [
        "a322f8ab66f50b6c0dcdb59abae84fede7a5fded"
      ],
      "author": {
        "name": "Fengguang Wu",
        "email": "wfg@mail.ustc.edu.cn",
        "time": "Mon Feb 04 22:29:36 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:19 2008 -0800"
      },
      "message": "writeback: speed up writeback of big dirty files\n\nAfter making dirty a 100M file, the normal behavior is to start the\nwriteback for all data after 30s delays.  But sometimes the following\nhappens instead:\n\n\t- after 30s:    ~4M\n\t- after 5s:     ~4M\n\t- after 5s:     all remaining 92M\n\nSome analyze shows that the internal io dispatch queues goes like this:\n\n\t\ts_io            s_more_io\n\t\t-------------------------\n\t1)\t100M,1K         0\n\t2)\t1K              96M\n\t3)\t0               96M\n1) initial state with a 100M file and a 1K file\n\n2) 4M written, nr_to_write \u003c\u003d 0, so write more\n\n3) 1K written, nr_to_write \u003e 0, no more writes(BUG)\n\nnr_to_write \u003e 0 in (3) fools the upper layer to think that data have all\nbeen written out.  The big dirty file is actually still sitting in\ns_more_io.  We cannot simply splice s_more_io back to s_io as soon as s_io\nbecomes empty, and let the loop in generic_sync_sb_inodes() continue: this\nmay starve newly expired inodes in s_dirty.  It is also not an option to\ndraw inodes from both s_more_io and s_dirty, an let the loop go on: this\nmight lead to live locks, and might also starve other superblocks in sync\ntime(well kupdate may still starve some superblocks, that\u0027s another bug).\n\nWe have to return when a full scan of s_io completes.  So nr_to_write \u003e 0\ndoes not necessarily mean that \"all data are written\".  This patch\nintroduces a flag writeback_control.more_io to indicate that more io should\nbe done.  With it the big dirty file no longer has to wait for the next\nkupdate invokation 5s later.\n\nIn sync_sb_inodes() we only set more_io on super_blocks we actually\nvisited.  This avoids the interaction between two pdflush deamons.\n\nAlso in __sync_single_inode() we don\u0027t blindly keep requeuing the io if the\nfilesystem cannot progress.  Failing to do so may lead to 100% iowait.\n\nTested-by: Mike Snitzer \u003csnitzer@gmail.com\u003e\nSigned-off-by: Fengguang Wu \u003cwfg@mail.ustc.edu.cn\u003e\nCc: Michael Rubin \u003cmrubin@google.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "0ed361dec36945f3116ee1338638ada9a8920905",
      "tree": "3e0fc6319ef49f6cac82e8203a8aa199302ab9c5",
      "parents": [
        "62e1c55300f306e06478f460a7eefba085206e0b"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Mon Feb 04 22:29:34 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:19 2008 -0800"
      },
      "message": "mm: fix PageUptodate data race\n\nAfter running SetPageUptodate, preceeding stores to the page contents to\nactually bring it uptodate may not be ordered with the store to set the\npage uptodate.\n\nTherefore, another CPU which checks PageUptodate is true, then reads the\npage contents can get stale data.\n\nFix this by having an smp_wmb before SetPageUptodate, and smp_rmb after\nPageUptodate.\n\nMany places that test PageUptodate, do so with the page locked, and this\nwould be enough to ensure memory ordering in those places if\nSetPageUptodate were only called while the page is locked.  Unfortunately\nthat is not always the case for some filesystems, but it could be an idea\nfor the future.\n\nAlso bring the handling of anonymous page uptodateness in line with that of\nfile backed page management, by marking anon pages as uptodate when they\n_are_ uptodate, rather than when our implementation requires that they be\nmarked as such.  Doing allows us to get rid of the smp_wmb\u0027s in the page\ncopying functions, which were especially added for anonymous pages for an\nanalogous memory ordering problem.  Both file and anonymous pages are\nhandled with the same barriers.\n\nFAQ:\nQ. Why not do this in flush_dcache_page?\nA. Firstly, flush_dcache_page handles only one side (the smb side) of the\nordering protocol; we\u0027d still need smp_rmb somewhere. Secondly, hiding away\nmemory barriers in a completely unrelated function is nasty; at least in the\nPageUptodate macros, they are located together with (half) the operations\ninvolved in the ordering. Thirdly, the smp_wmb is only required when first\nbringing the page uptodate, wheras flush_dcache_page should be called each time\nit is written to through the kernel mapping. It is logically the wrong place to\nput it.\n\nQ. Why does this increase my text size / reduce my performance / etc.\nA. Because it is adding the necessary instructions to eliminate the data-race.\n\nQ. Can it be improved?\nA. Yes, eg. if you were to create a rule that all SetPageUptodate operations\nrun under the page lock, we could avoid the smp_rmb places where PageUptodate\nis queried under the page lock. Requires audit of all filesystems and at least\nsome would need reworking. That\u0027s great you\u0027re interested, I\u0027m eagerly awaiting\nyour patches.\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "195cf453d2c3d789cbe80e3735755f860c2fb222",
      "tree": "fad48a8167744b6c091c8ca499bc78b859af8957",
      "parents": [
        "3dfa5721f12c3d5a441448086bee156887daa961"
      ],
      "author": {
        "name": "Bron Gondwana",
        "email": "brong@fastmail.fm",
        "time": "Mon Feb 04 22:29:20 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:18 2008 -0800"
      },
      "message": "mm/page-writeback: highmem_is_dirtyable option\n\nAdd vm.highmem_is_dirtyable toggle\n\nA 32 bit machine with HIGHMEM64 enabled running DCC has an MMAPed file of\napproximately 2Gb size which contains a hash format that is written\nrandomly by the dbclean process.  On 2.6.16 this process took a few\nminutes.  With lowmem only accounting of dirty ratios, this takes about 12\nhours of 100% disk IO, all random writes.\n\nInclude a toggle in /proc/sys/vm/highmem_is_dirtyable which can be set to 1 to\nadd the highmem back to the total available memory count.\n\n[akpm@linux-foundation.org: Fix the CONFIG_DETECT_SOFTLOCKUP\u003dy build]\nSigned-off-by: Bron Gondwana \u003cbrong@fastmail.fm\u003e\nCc: Ethan Solomita \u003csolo@google.com\u003e\nCc: Peter Zijlstra \u003ca.p.zijlstra@chello.nl\u003e\nCc: WU Fengguang \u003cwfg@mail.ustc.edu.cn\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3dfa5721f12c3d5a441448086bee156887daa961",
      "tree": "8ace8c3f842f8b626b762bb9d2a9b24d8e3bd130",
      "parents": [
        "5dc331852848a38ca00a2817e5b98a1d0561b116"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:29:19 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:18 2008 -0800"
      },
      "message": "Page allocator: get rid of the list of cold pages\n\nWe have repeatedly discussed if the cold pages still have a point. There is\none way to join the two lists: Use a single list and put the cold pages at the\nend and the hot pages at the beginning. That way a single list can serve for\nboth types of allocations.\n\nThe discussion of the RFC for this and Mel\u0027s measurements indicate that\nthere may not be too much of a point left to having separate lists for\nhot and cold pages (see http://marc.info/?t\u003d119492914200001\u0026r\u003d1\u0026w\u003d2).\n\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nCc: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: Martin Bligh \u003cmbligh@mbligh.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5e5419734c8719cbc01af959ad9c0844002c0df5",
      "tree": "a075dca3f719946689efa0245464855cbf2a20ce",
      "parents": [
        "9f8f2172537de7af0b0fbd33502d18d52b1339bc"
      ],
      "author": {
        "name": "Benjamin Herrenschmidt",
        "email": "benh@kernel.crashing.org",
        "time": "Mon Feb 04 22:29:14 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:18 2008 -0800"
      },
      "message": "add mm argument to pte/pmd/pud/pgd_free\n\n(with Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e)\n\nThe pgd/pud/pmd/pte page table allocation functions get a mm_struct pointer as\nfirst argument.  The free functions do not get the mm_struct argument.  This\nis 1) asymmetrical and 2) to do mm related page table allocations the mm\nargument is needed on the free function as well.\n\n[kamalesh@linux.vnet.ibm.com: i386 fix]\n[akpm@linux-foundation.org: coding-syle fixes]\nSigned-off-by: Benjamin Herrenschmidt \u003cbenh@kernel.crashing.org\u003e\nSigned-off-by: Martin Schwidefsky \u003cschwidefsky@de.ibm.com\u003e\nCc: \u003clinux-arch@vger.kernel.org\u003e\nSigned-off-by: Kamalesh Babulal \u003ckamalesh@linux.vnet.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "9f8f2172537de7af0b0fbd33502d18d52b1339bc",
      "tree": "273c86583ed0295059c5526d3bd6927520a20add",
      "parents": [
        "e2848a0efedef4dad52d1334d37f8719cd6268fd"
      ],
      "author": {
        "name": "Christoph Lameter",
        "email": "clameter@sgi.com",
        "time": "Mon Feb 04 22:29:11 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:17 2008 -0800"
      },
      "message": "Page allocator: clean up pcp draining functions\n\n- Add comments explaing how drain_pages() works.\n\n- Eliminate useless functions\n\n- Rename drain_all_local_pages to drain_all_pages(). It does drain\n  all pages not only those of the local processor.\n\n- Eliminate useless interrupt off / on sequences. drain_pages()\n  disables interrupts on its own. The execution thread is\n  pinned to processor by the caller. So there is no need to\n  disable interrupts.\n\n- Put drain_all_pages() declaration in gfp.h and remove the\n  declarations from suspend.h and from mm/memory_hotplug.c\n\n- Make software suspend call drain_all_pages(). The draining\n  of processor local pages is may not the right approach if\n  software suspend wants to support SMP. If they call drain_all_pages\n  then we can make drain_pages() static.\n\n[akpm@linux-foundation.org: fix build]\nSigned-off-by: Christoph Lameter \u003cclameter@sgi.com\u003e\nAcked-by: Mel Gorman \u003cmel@csn.ul.ie\u003e\nCc: \"Rafael J. Wysocki\" \u003crjw@sisk.pl\u003e\nCc: Daniel Walker \u003cdwalker@mvista.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f248dcb34d7b7ac255db70071a20be9d9c6ad491",
      "tree": "ec7c7fb115e40b4a337af98a6f9f2ad5db9af1f0",
      "parents": [
        "4752c369789250eafcd7813e11c8fb689235b0d2"
      ],
      "author": {
        "name": "Matt Mackall",
        "email": "mpm@selenic.com",
        "time": "Mon Feb 04 22:29:03 2008 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@woody.linux-foundation.org",
        "time": "Tue Feb 05 09:44:16 2008 -0800"
      },
      "message": "maps4: move clear_refs code to task_mmu.c\n\nThis puts all the clear_refs code where it belongs and probably lets things\ncompile on MMU-less systems as well.\n\nSigned-off-by: Matt Mackall \u003cmpm@selenic.com\u003e\nCc: Jeremy Fitzhardinge \u003cjeremy@goop.org\u003e\nCc: David Rientjes \u003crientjes@google.com\u003e\nCc: Dave Hansen \u003chaveblue@us.ibm.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    }
  ],
  "next": "e6473092bd9116583ce9ab8cf1b6570e1aa6fc83"
}
