)]}'
{
  "log": [
    {
      "commit": "0c7aef4569f8680951b7dee01dddffb9d2f809ff",
      "tree": "04a78e99cf53549dd8d32d6dbab5923f4f212f8d",
      "parents": [
        "356c3eb466fd1a12afd6448d90fba3922836e5f1"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:46 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:52 2009 -0500"
      },
      "message": "NSM: Check result of SM_UNMON upcall\n\nMake sure any error returned by rpc.statd during an SM_UNMON call is\nreported rather than ignored completely.  There isn\u0027t much to do with\nsuch an error, but we should log it in any case.\n\nSimilar to a recent change to nsm_monitor().\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "356c3eb466fd1a12afd6448d90fba3922836e5f1",
      "tree": "1b30ed40ea9ee8c0e548f71d7e36bafd293ad764",
      "parents": [
        "c8c23c423dec49cb439697d3dc714e1500ff1610"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:38 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:52 2009 -0500"
      },
      "message": "NLM: Move the public declaration of nsm_unmonitor() to lockd.h\n\nClean up.\n\nMake the nlm_host argument \"const,\" and move the public declaration to\nlockd.h.  Add a documenting comment.\n\nBruce observed that nsm_unmonitor()\u0027s only caller doesn\u0027t care about\nits return code, so make nsm_unmonitor() return void.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c8c23c423dec49cb439697d3dc714e1500ff1610",
      "tree": "161035f51e31cce6d9f8dc104bad62a329496a77",
      "parents": [
        "1e49323c4ab044d05bbc68cf13cadcbd4372468c"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:31 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:52 2009 -0500"
      },
      "message": "NSM: Release nsmhandle in nlm_destroy_host\n\nThe nsm_handle\u0027s reference count is bumped in nlm_lookup_host().  It\nshould be decremented in nlm_destroy_host() to make it easier to see\nthe balance of these two operations.\n\nMove the nsm_release() call to fs/lockd/host.c.\n\nThe h_nsmhandle pointer is set in nlm_lookup_host(), and never cleared.\nThe nlm_destroy_host() function is never called for the same nlm_host\ntwice, so h_nsmhandle won\u0027t ever be NULL when nsm_unmonitor() is\ncalled.\n\nAll references to the nlm_host are gone before it is freed.  We can\nskip making h_nsmhandle NULL just before the nlm_host is deallocated.\n\nIt\u0027s also likely we can remove the h_nsmhandle NULL check in\nnlmsvc_is_client() as well, but we can do that later when rearchitect-\ning the nlm_host cache.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1e49323c4ab044d05bbc68cf13cadcbd4372468c",
      "tree": "5d997638d8595d3698d6e3b2c81292fb09b42ad8",
      "parents": [
        "5d254b119823658cc318f88589c6c426b3d0a153"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:24 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:52 2009 -0500"
      },
      "message": "NLM: Move the public declaration of nsm_monitor() to lockd.h\n\nClean up.\n\nMake the nlm_host argument \"const,\" and move the public declaration to\nlockd.h with other NSM public function (nsm_release, eg) and global\nvariable declarations.\n\nAdd a documenting comment.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "5d254b119823658cc318f88589c6c426b3d0a153",
      "tree": "147bba86428c33650a686b70cbc32643c8547f86",
      "parents": [
        "5bc74bef7c9b652f0f2aa9c5a8d5ac86881aba79"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:15 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:51 2009 -0500"
      },
      "message": "NSM: Make sure to return an error if the SM_MON call result is not zero\n\nThe nsm_monitor() function reports an error and does not set sm_monitored\nif the SM_MON upcall reply has a non-zero result code, but nsm_monitor()\ndoes not return an error to its caller in this case.\n\nSince sm_monitored is not set, the upcall is retried when the next NLM\nrequest invokes nsm_monitor().  However, that may not come for a while.\nIn the meantime, at least one NLM request will potentially proceed\nwithout the peer being monitored properly.\n\nHave nsm_monitor() return an error if the result code is non-zero.\nThis will cause all NLM requests to fail immediately if the upcall\ncompleted successfully but rpc.statd returned an error.\n\nThis may be inconvenient in some cases (for example if rpc.statd\ncannot complete a proper DNS reverse lookup of the hostname), but will\nmake the reboot monitoring service more robust by forcing such issues\nto be corrected by an admin.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "5bc74bef7c9b652f0f2aa9c5a8d5ac86881aba79",
      "tree": "476bb3b039e814e46f2675933a88470781fec5f2",
      "parents": [
        "501c1ed3fb5c2648ba1709282c71617910917f66"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:08 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:51 2009 -0500"
      },
      "message": "NSM: Remove BUG_ON() in nsm_monitor()\n\nClean up: Remove the BUG_ON() invocation in nsm_monitor().  It\u0027s not\nlikely that nsm_monitor() is ever called with a NULL host pointer, and\nthe code will die anyway if host is NULL.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "501c1ed3fb5c2648ba1709282c71617910917f66",
      "tree": "600bb4b00d4d222fceea5a8187f513e8eb979e61",
      "parents": [
        "9fee49024ed19d849413df4ab6ec1a1a60aaae94"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:21:01 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:51 2009 -0500"
      },
      "message": "NLM: Remove redundant printk() in nlmclnt_lock()\n\nThe nsm_monitor() function already generates a printk(KERN_NOTICE) if\nthe SM_MON upcall fails, so the similar printk() in the nlmclnt_lock()\nfunction is redundant.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "9fee49024ed19d849413df4ab6ec1a1a60aaae94",
      "tree": "fc3830479d06275ac28ced9751bdcd3662ee3a34",
      "parents": [
        "29ed1407ed81086b778ebf12145b048ac3f7e10e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:53 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:51 2009 -0500"
      },
      "message": "NSM: Use sm_name instead of h_name in nsm_monitor() and nsm_unmonitor()\n\nClean up: Use the sm_name field for reporting the hostname in nsm_monitor()\nand nsm_unmonitor(), just as the other functions in fs/lockd/mon.c do.\n\nThe h_name field is just a copy of the sm_name pointer.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "29ed1407ed81086b778ebf12145b048ac3f7e10e",
      "tree": "35523669465a1a37f969054e1c3d7530582701fc",
      "parents": [
        "f47534f7f0ac7727e05ec4274b764b181df2cf7f"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:46 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:51 2009 -0500"
      },
      "message": "NSM: Support IPv6 version of mon_name\n\nThe \"mon_name\" argument of the NSMPROC_MON and NSMPROC_UNMON upcalls\nis a string that contains the hostname or IP address of the remote peer\nto be notified when this host has rebooted.  The sm-notify command uses\nthis identifier to contact the peer when we reboot, so it must be\neither a well-qualified DNS hostname or a presentation format IP\naddress string.\n\nWhen the \"nsm_use_hostnames\" sysctl is set to zero, the kernel\u0027s NSM\nprovides a presentation format IP address in the \"mon_name\" argument.\nOtherwise, the \"caller_name\" argument from NLM requests is used,\nwhich is usually just the DNS hostname of the peer.\n\nTo support IPv6 addresses for the mon_name argument, we use the\nnsm_handle\u0027s address eye-catcher, which already contains an appropriate\npresentation format address string.  Using the eye-catcher string\nobviates the need to use a large buffer on the stack to form the\npresentation address string for the upcall.\n\nThis patch also addresses a subtle bug.\n\nAn NSMPROC_MON request and the subsequent NSMPROC_UNMON request for the\nsame peer are required to use the same value for the \"mon_name\"\nargument.  Otherwise, rpc.statd\u0027s NSMPROC_UNMON processing cannot\nlocate the database entry for that peer and remove it.\n\nIf the setting of nsm_use_hostnames is changed between the time the\nkernel sends an NSMPROC_MON request and the time it sends the\nNSMPROC_UNMON request for the same peer, the \"mon_name\" argument for\nthese two requests may not be the same.  This is because the value of\n\"mon_name\" is currently chosen at the moment the call is made based on\nthe setting of nsm_use_hostnames\n\nTo ensure both requests pass identical contents in the \"mon_name\"\nargument, we now select which string to use for the argument in the\nnsm_monitor() function.  A pointer to this string is saved in the\nnsm_handle so it can be used for a subsequent NSMPROC_UNMON upcall.\n\nNB: There are other potential problems, such as how nlm_host_rebooted()\nmight behave if nsm_use_hostnames were changed while hosts are still\nbeing monitored.  This patch does not attempt to address those\nproblems.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "f47534f7f0ac7727e05ec4274b764b181df2cf7f",
      "tree": "79cfac474c4971ca7efa10b8c5a6e4ba7f1aaf0a",
      "parents": [
        "5acf43155d1bcc412d892c73f64044f9a826cde6"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:38 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:50 2009 -0500"
      },
      "message": "NSM: Use modern style for sm_name field in nsm_handle\n\nClean up: I\u0027m about to add another \"char *\" field to the nsm_handle\nstructure.  The sm_name field uses an older style of declaring a\n\"char *\" field.  If I match that style for the new field, checkpatch.pl\nwill complain.\n\nSo, fix the sm_name field to use the new style.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "5acf43155d1bcc412d892c73f64044f9a826cde6",
      "tree": "cc505431849be49a234f24bcc3290285a207e3fb",
      "parents": [
        "a4846750f090702e2fb848ac4fe5827bcef34060"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:31 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:50 2009 -0500"
      },
      "message": "NSM: convert printk(KERN_DEBUG) to a dprintk()\n\nClean up: make the printk(KERN_DEBUG) in nsm_mon_unmon() a dprintk,\nand add another dprintk to note if creating an RPC client for the\nupcall failed.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "a4846750f090702e2fb848ac4fe5827bcef34060",
      "tree": "657d2a61c0b6777c70eb40fcd42e44ee24a95264",
      "parents": [
        "afb03699dc0a920aed3322ad0e6895533941fb1e"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:23 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:50 2009 -0500"
      },
      "message": "NSM: Use C99 structure initializer to initialize nsm_args\n\nClean up: Use a C99 structure initializer instead of open-coding the\ninitialization of nsm_args.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "afb03699dc0a920aed3322ad0e6895533941fb1e",
      "tree": "8be804b0e4985a5dba70fccc94ce0939292d3f8d",
      "parents": [
        "bc995801a09d1fead0bec1356bfd836911c8eed7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:16 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Add helper to handle IPv4 addresses\n\nClean up: introduce a helper function to generate IPv4 addresses using\nthe same style as the IPv6 helper function we just added.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "bc995801a09d1fead0bec1356bfd836911c8eed7",
      "tree": "b7a2faad59bfa92db4057c23fcf7d31b70d20611",
      "parents": [
        "6999fb4016b2604c2f8a65586bba4a62a4b24ce7"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:08 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Support IPv6 scope IDs in nlm_display_address()\n\nScope ID support is needed since the kernel\u0027s NSM implementation is\nabout to use these displayed addresses as a mon_name in some cases.\n\nWhen nsm_use_hostnames is zero, without scope ID support NSM will fail\nto handle peers that contact us via a link-local address.  Link-local\naddresses do not work without an interface ID, which is stored in the\nsockaddr\u0027s sin6_scope_id field.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "6999fb4016b2604c2f8a65586bba4a62a4b24ce7",
      "tree": "14639d66b17613d364898c4b59b01903f7db1bb6",
      "parents": [
        "1df40b609ad5a622904eb652109c287fe9c93ec5"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:20:01 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Remove AF_UNSPEC arm in nlm_display_address()\n\nAF_UNSPEC support is no longer needed in nlm_display_address() now\nthat a presentation address is no longer generated for the h_srcaddr\nfield.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "1df40b609ad5a622904eb652109c287fe9c93ec5",
      "tree": "53c2ea9b443d7a94c564116c4af706500dbbf889",
      "parents": [
        "7538ce1eb656a1477bedd5b1c202226e7abf5e7b"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:19:53 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:49 2009 -0500"
      },
      "message": "NLM: Remove address eye-catcher buffers from nlm_host\n\nThe h_name field in struct nlm_host is a just copy of\nh_nsmhandle-\u003esm_name.  Likewise, the contents of the h_addrbuf field\nshould be identical to the sm_addrbuf field.\n\nThe h_srcaddrbuf field is used only in one place for debugging.  We can\nlive without this until we get %pI formatting for printk().\n\nCurrently these buffers are 48 bytes, but we need to support scope IDs\nin IPv6 presentation addresses, which means making the buffers even\nlarger.  Instead, let\u0027s find ways to eliminate them to save space.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "7538ce1eb656a1477bedd5b1c202226e7abf5e7b",
      "tree": "4da1c55aebda14ae24736d3d69444d099e6822b3",
      "parents": [
        "c72a476b4b7ecadb80185de31236edb303c1a5d0"
      ],
      "author": {
        "name": "Chuck Lever",
        "email": "chuck.lever@oracle.com",
        "time": "Thu Dec 04 14:19:45 2008 -0500"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:48 2009 -0500"
      },
      "message": "NLM: Use modern style for pointer fields in nlm_host\n\nClean up: I\u0027m about to add another \"char *\" field to the nlm_host\nstructure.  The h_name field, for example, uses an older style of\ndeclaring a \"char *\" field.  If I match that style for the new field,\ncheckpatch.pl will complain.\n\nSo, fix pointer fields to use the new style.\n\nSigned-off-by: Chuck Lever \u003cchuck.lever@oracle.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c72a476b4b7ecadb80185de31236edb303c1a5d0",
      "tree": "c57ac715970c4a3363b28122ce2d3b47fe179b7f",
      "parents": [
        "c9233eb7b0b11ef176d4bf68da2ce85464b6ec39"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Oct 20 11:51:58 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:48 2009 -0500"
      },
      "message": "lockd: set svc_serv-\u003esv_maxconn to a more reasonable value (try #3)\n\nThe default method for calculating the number of connections allowed\nper RPC service arbitrarily limits single-threaded services to 80\nconnections. This is too low for services like lockd and artificially\nlimits the number of TCP clients that it can support.\n\nHave lockd set a default sv_maxconn value to 1024 (which is the typical\ndefault value for RLIMIT_NOFILE. Also add a module parameter to allow an\nadmin to set this to an arbitrary value.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "c9233eb7b0b11ef176d4bf68da2ce85464b6ec39",
      "tree": "22f9f999e0d48a5f3aae6b32f9ff702eb4db05cc",
      "parents": [
        "548eaca46b3cf4419b6c2be839a106d8641ffb70"
      ],
      "author": {
        "name": "Jeff Layton",
        "email": "jlayton@redhat.com",
        "time": "Mon Oct 20 11:51:57 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:47 2009 -0500"
      },
      "message": "sunrpc: add sv_maxconn field to svc_serv (try #3)\n\nsvc_check_conn_limits() attempts to prevent denial of service attacks\nby having the service close old connections once it reaches a\nthreshold. This threshold is based on the number of threads in the\nservice:\n\n\t(serv-\u003esv_nrthreads + 3) * 20\n\nOnce we reach this, we drop the oldest connections and a printk pops\nto warn the admin that they should increase the number of threads.\n\nIncreasing the number of threads isn\u0027t an option however for services\nlike lockd. We don\u0027t want to eliminate this check entirely for such\nservices but we need some way to increase this limit.\n\nThis patch adds a sv_maxconn field to the svc_serv struct. When it\u0027s\nset to 0, we use the current method to calculate the max number of\nconnections. RPC services can then set this on an as-needed basis.\n\nSigned-off-by: Jeff Layton \u003cjlayton@redhat.com\u003e\nAcked-by: Neil Brown \u003cneilb@suse.de\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "548eaca46b3cf4419b6c2be839a106d8641ffb70",
      "tree": "81f41403c6196d45f9195722cc6d7e5c44410969",
      "parents": [
        "2bd9e7b62e6e1da3f881c40c73d93e9a212ce6de"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Oct 20 17:48:43 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:47 2009 -0500"
      },
      "message": "nfsd: document new filehandle fsid types\n\nDescriptions taken from mountd code (in nfs-utils/utils/mountd/cache.c).\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "2bd9e7b62e6e1da3f881c40c73d93e9a212ce6de",
      "tree": "dc378a128825bbf80367abb9ea8f75261ed1d05c",
      "parents": [
        "9346eff0dea1e5855fba25c9fe639d92a4db3135"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Mon Oct 20 11:47:09 2008 +0530"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:47 2009 -0500"
      },
      "message": "nfsd: Fix leaked memory in nfs4_make_rec_clidname\n\ncksum.data is not freed up in one error case. Compile tested.\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "9346eff0dea1e5855fba25c9fe639d92a4db3135",
      "tree": "938e9ee1f31d45c2dbf22e39cc81eb4deacea310",
      "parents": [
        "b3d47676d474ecd914c72049c87e71e5f0ffe040"
      ],
      "author": {
        "name": "Krishna Kumar",
        "email": "krkumar2@in.ibm.com",
        "time": "Mon Oct 20 11:44:28 2008 +0530"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:45 2009 -0500"
      },
      "message": "nfsd: Minor cleanup of find_stateid\n\nMinor cleanup/rewrite of find_stateid. Compile tested.\n\nSigned-off-by: Krishna Kumar \u003ckrkumar2@in.ibm.com\u003e\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "b3d47676d474ecd914c72049c87e71e5f0ffe040",
      "tree": "cdf0016aac0fc81abe75aac56f5349022d2fd2e5",
      "parents": [
        "238c6d54830c624f34ac9cf123ac04aebfca5013"
      ],
      "author": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Mon Oct 20 13:01:59 2008 -0400"
      },
      "committer": {
        "name": "J. Bruce Fields",
        "email": "bfields@citi.umich.edu",
        "time": "Tue Jan 06 11:53:45 2009 -0500"
      },
      "message": "nfsd: update fh_verify description\n\nSigned-off-by: J. Bruce Fields \u003cbfields@citi.umich.edu\u003e\n"
    },
    {
      "commit": "238c6d54830c624f34ac9cf123ac04aebfca5013",
      "tree": "43b7f595013483382a3053237c45d9d2824e0295",
      "parents": [
        "8e128ce3318a147903c893de1891f6c2306f8a61",
        "a159c1ac5f33c6cf0f5aa3c9d1ccdc82c907ee46"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:20:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:20:59 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-2.6-dm:\n  dm snapshot: extend exception store functions\n  dm snapshot: split out exception store implementations\n  dm snapshot: rename struct exception_store\n  dm snapshot: separate out exception store interface\n  dm mpath: move trigger_event to system workqueue\n  dm: add name and uuid to sysfs\n  dm table: rework reference counting\n  dm: support barriers on simple devices\n  dm request: extend target interface\n  dm request: add caches\n  dm ioctl: allow dm_copy_name_and_uuid to return only one field\n  dm log: ensure log bitmap fits on log device\n  dm log: move region_size validation\n  dm log: avoid reinitialising io_req on every operation\n  dm: consolidate target deregistration error handling\n  dm raid1: fix error count\n  dm log: fix dm_io_client leak on error paths\n  dm snapshot: change yield to msleep\n  dm table: drop reference at unbind\n"
    },
    {
      "commit": "a159c1ac5f33c6cf0f5aa3c9d1ccdc82c907ee46",
      "tree": "2cb6bfd3f376e2366f3e3820ebd07a0a86a01cfc",
      "parents": [
        "4db6bfe02bdc7dc5048f46dd682a94801d029adc"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Tue Jan 06 03:05:19 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:19 2009 +0000"
      },
      "message": "dm snapshot: extend exception store functions\n\nSupply dm_add_exception as a callback to the read_metadata function.\nAdd a status function ready for a later patch and name the functions\nconsistently.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "4db6bfe02bdc7dc5048f46dd682a94801d029adc",
      "tree": "780a41560ea05266288853204f0d7e4eef4f6355",
      "parents": [
        "1ae25f9c933d1432fbffdf3e126051a974608abf"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:17 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:17 2009 +0000"
      },
      "message": "dm snapshot: split out exception store implementations\n\nMove the existing snapshot exception store implementations out into\nseparate files.  Later patches will place these behind a new\ninterface in preparation for alternative implementations.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "1ae25f9c933d1432fbffdf3e126051a974608abf",
      "tree": "5a15a6330107a70a51d0c3cfe0bf703762e79839",
      "parents": [
        "aea53d92f70eeb00ae480e399a997dd55fd5055d"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Tue Jan 06 03:05:16 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:16 2009 +0000"
      },
      "message": "dm snapshot: rename struct exception_store\n\nRename struct exception_store to dm_exception_store.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "aea53d92f70eeb00ae480e399a997dd55fd5055d",
      "tree": "55e087e5e22168ed87f6d51ca0c8557a7678834f",
      "parents": [
        "fe9cf30eb8186ef267d1868dc9f12f2d0f40835a"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Tue Jan 06 03:05:15 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:15 2009 +0000"
      },
      "message": "dm snapshot: separate out exception store interface\n\nPull structures that bridge the gap between snapshot and\nexception store out of dm-snap.h and put them in a new\n.h file - dm-exception-store.h.  This file will define the\nAPI for new exception stores.\n\nUltimately, dm-snap.h is unnecessary, since only dm-snap.c\nshould be using it.\n\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "fe9cf30eb8186ef267d1868dc9f12f2d0f40835a",
      "tree": "357db984073d7362b6c31dd431f77768c65800bf",
      "parents": [
        "784aae735d9b0bba3f8b9faef4c8b30df3bf0128"
      ],
      "author": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:13 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:13 2009 +0000"
      },
      "message": "dm mpath: move trigger_event to system workqueue\n\nThe same workqueue is used both for sending uevents and processing queued I/O.\nDeadlock has been reported in RHEL5 when sending a uevent was blocked waiting\nfor the queued I/O to be processed.  Use scheduled_work() for the asynchronous\nuevents instead.\n\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "784aae735d9b0bba3f8b9faef4c8b30df3bf0128",
      "tree": "7e2e956c395b27f63569d7a6adc1098f116cc3a4",
      "parents": [
        "d58168763f74d1edbc296d7038c60efe6493fdd4"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Jan 06 03:05:12 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:12 2009 +0000"
      },
      "message": "dm: add name and uuid to sysfs\n\nImplement simple read-only sysfs entry for device-mapper block device.\n\nThis patch adds a simple sysfs directory named \"dm\" under block device\nproperties and implements\n\t- name attribute (string containing mapped device name)\n\t- uuid attribute (string containing UUID, or empty string if not set)\n\nThe kobject is embedded in mapped_device struct, so no additional\nmemory allocation is needed for initializing sysfs entry.\n\nDuring the processing of sysfs attribute we need to lock mapped device\nwhich is done by a new function dm_get_from_kobj, which returns the md\nassociated with kobject and increases the usage count.\n\nEach \u0027show attribute\u0027 function is responsible for its own locking.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "d58168763f74d1edbc296d7038c60efe6493fdd4",
      "tree": "03866d641211fe16961a5b8aab6d9132bf07d9c8",
      "parents": [
        "ab4c1424882be9cd70b89abf2b484add355712fa"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Tue Jan 06 03:05:10 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:10 2009 +0000"
      },
      "message": "dm table: rework reference counting\n\nRework table reference counting.\n\nThe existing code uses a reference counter. When the last reference is\ndropped and the counter reaches zero, the table destructor is called.\nTable reference counters are acquired/released from upcalls from other\nkernel code (dm_any_congested, dm_merge_bvec, dm_unplug_all).\nIf the reference counter reaches zero in one of the upcalls, the table\ndestructor is called from almost random kernel code.\n\nThis leads to various problems:\n* dm_any_congested being called under a spinlock, which calls the\n  destructor, which calls some sleeping function.\n* the destructor attempting to take a lock that is already taken by the\n  same process.\n* stale reference from some other kernel code keeps the table\n  constructed, which keeps some devices open, even after successful\n  return from \"dmsetup remove\". This can confuse lvm and prevent closing\n  of underlying devices or reusing device minor numbers.\n\nThe patch changes reference counting so that the table destructor can be\ncalled only at predetermined places.\n\nThe table has always exactly one reference from either mapped_device-\u003emap\nor hash_cell-\u003enew_map. After this patch, this reference is not counted\nin table-\u003eholders.  A pair of dm_create_table/dm_destroy_table functions\nis used for table creation/destruction.\n\nTemporary references from the other code increase table-\u003eholders. A pair\nof dm_table_get/dm_table_put functions is used to manipulate it.\n\nWhen the table is about to be destroyed, we wait for table-\u003eholders to\nreach 0. Then, we call the table destructor.  We use active waiting with\nmsleep(1), because the situation happens rarely (to one user in 5 years)\nand removing the device isn\u0027t performance-critical task: the user doesn\u0027t\ncare if it takes one tick more or not.\n\nThis way, the destructor is called only at specific points\n(dm_table_destroy function) and the above problems associated with lazy\ndestruction can\u0027t happen.\n\nFinally remove the temporary protection added to dm_any_congested().\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "ab4c1424882be9cd70b89abf2b484add355712fa",
      "tree": "8baed3606be67900df9f02e42fcdb091b78c5def",
      "parents": [
        "7d76345da6ed3927c9cbf5d3f7a7021e8bba7374"
      ],
      "author": {
        "name": "Andi Kleen",
        "email": "ak@suse.de",
        "time": "Tue Jan 06 03:05:09 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:09 2009 +0000"
      },
      "message": "dm: support barriers on simple devices\n\nImplement barrier support for single device DM devices\n\nThis patch implements barrier support in DM for the common case of dm linear\njust remapping a single underlying device. In this case we can safely\npass the barrier through because there can be no reordering between\ndevices.\n\n NB. Any DM device might cease to support barriers if it gets\n     reconfigured so code must continue to allow for a possible\n     -EOPNOTSUPP on every barrier bio submitted.  - agk\n\nSigned-off-by: Andi Kleen \u003cak@suse.de\u003e\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "7d76345da6ed3927c9cbf5d3f7a7021e8bba7374",
      "tree": "d0b470dd1a55dfffb27ffa012e4a5afebd133495",
      "parents": [
        "8fbf26ad5b16ad3a826ca7fe3e86700420abed1f"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Jan 06 03:05:07 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:07 2009 +0000"
      },
      "message": "dm request: extend target interface\n\nThis patch adds the following target interfaces for request-based dm.\n\n  map_rq    : for mapping a request\n\n  rq_end_io : for finishing a request\n\n  busy      : for avoiding performance regression from bio-based dm.\n              Target can tell dm core not to map requests now, and\n              that may help requests in the block layer queue to be\n              bigger by I/O merging.\n              In bio-based dm, this behavior is done by device\n              drivers managing the block layer queue.\n              But in request-based dm, dm core has to do that\n              since dm core manages the block layer queue.\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "8fbf26ad5b16ad3a826ca7fe3e86700420abed1f",
      "tree": "43bc5cc2ca90ea394682daa4b665a46ebb110b97",
      "parents": [
        "23d39f63aa87e812fd879b8bc32ee6ccfe733de3"
      ],
      "author": {
        "name": "Kiyoshi Ueda",
        "email": "k-ueda@ct.jp.nec.com",
        "time": "Tue Jan 06 03:05:06 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:06 2009 +0000"
      },
      "message": "dm request: add caches\n\nThis patch prepares some kmem_caches for request-based dm.\n\nSigned-off-by: Kiyoshi Ueda \u003ck-ueda@ct.jp.nec.com\u003e\nSigned-off-by: Jun\u0027ichi Nomura \u003cj-nomura@ce.jp.nec.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "23d39f63aa87e812fd879b8bc32ee6ccfe733de3",
      "tree": "3535af0aff56260cdbf573a704e3f0122c6cfc8b",
      "parents": [
        "ac1f0ac22c7be908fd33407273b9808bfaedada4"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Jan 06 03:05:04 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:04 2009 +0000"
      },
      "message": "dm ioctl: allow dm_copy_name_and_uuid to return only one field\n\nAllow NULL buffer in dm_copy_name_and_uuid if you only want to return one of\nthe fields.\n\n(Required by a following patch that adds these fields to sysfs.)\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nReviewed-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "ac1f0ac22c7be908fd33407273b9808bfaedada4",
      "tree": "f6a867138918b591639464802744506f6b83ad14",
      "parents": [
        "2045e88edb4e0c9ce62d317f77dc59d27d9c530e"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Jan 06 03:05:02 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:02 2009 +0000"
      },
      "message": "dm log: ensure log bitmap fits on log device\n\nCheck that the log bitmap will fit within the log device.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "2045e88edb4e0c9ce62d317f77dc59d27d9c530e",
      "tree": "324eeea271b889263d0141fe0c82d4b0e43d0079",
      "parents": [
        "6f3af01cb0eda0ec50fe1e4cbdf028269dc396fe"
      ],
      "author": {
        "name": "Milan Broz",
        "email": "mbroz@redhat.com",
        "time": "Tue Jan 06 03:05:01 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:05:01 2009 +0000"
      },
      "message": "dm log: move region_size validation\n\nMove log size validation from mirror target to log constructor.\n\nRemoved PAGE_SIZE restriction we no longer think necessary.\n\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "6f3af01cb0eda0ec50fe1e4cbdf028269dc396fe",
      "tree": "29988ebe5a40ee1092bdbeac45eb0bdc312ff670",
      "parents": [
        "10d3bd09a3c25df114f74f7f86e1b58d070bef32"
      ],
      "author": {
        "name": "Takahiro Yasui",
        "email": "tyasui@redhat.com",
        "time": "Tue Jan 06 03:04:59 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:59 2009 +0000"
      },
      "message": "dm log: avoid reinitialising io_req on every operation\n\nrw_header function updates three members of io_req data every time\nwhen I/O is processed. bi_rw and notify.fn are never modified once\nthey get initialized, and so they can be set in advance.\n\nheader_to_disk() can also be pulled out of write_header() since only one\ncaller needs it and write_header() can be replaced by rw_header()\ndirectly.\n\nSigned-off-by: Takahiro Yasui \u003ctyasui@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "10d3bd09a3c25df114f74f7f86e1b58d070bef32",
      "tree": "a44e2fe5ccc5950b87a1d31849e5f0ac24fdcc16",
      "parents": [
        "d460c65a6a9ec9e0d284864ec3a9a2d1b73f0e43"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Tue Jan 06 03:04:58 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:58 2009 +0000"
      },
      "message": "dm: consolidate target deregistration error handling\n\nChange dm_unregister_target to return void and use BUG() for error\nreporting.\n\ndm_unregister_target can only fail because of programming bug in the\ntarget driver. It can\u0027t fail because of user\u0027s behavior or disk errors.\n\nThis patch changes unregister_target to return void and use BUG if\nsomeone tries to unregister non-registered target or unregister target\nthat is in use.\n\nThis patch removes code duplication (testing of error codes in all dm\ntargets) and reports bugs in just one place, in dm_unregister_target. In\nsome target drivers, these return codes were ignored, which could lead\nto a situation where bugs could be missed.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "d460c65a6a9ec9e0d284864ec3a9a2d1b73f0e43",
      "tree": "84131d888f5ec610cc343ca7188a5d4044043c2b",
      "parents": [
        "c7a2bd19b7c1e0bd2c7604c53d2583e91e536948"
      ],
      "author": {
        "name": "Jonathan Brassow",
        "email": "jbrassow@redhat.com",
        "time": "Tue Jan 06 03:04:57 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:57 2009 +0000"
      },
      "message": "dm raid1: fix error count\n\nAlways increase the error count when I/O on a leg of a mirror fails.\n\nThe error count is used to decide whether to select an alternative\nmirror leg.  If the target doesn\u0027t use the \"handle_errors\" feature, the\nerror count is not updated and the bio can get requeued forever by the\nread callback.\n\nFix it by increasing error_count before the handle_errors feature\nchecking.\n\nCc: stable@kernel.org\nSigned-off-by: Milan Broz \u003cmbroz@redhat.com\u003e\nSigned-off-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "c7a2bd19b7c1e0bd2c7604c53d2583e91e536948",
      "tree": "bb896040c05397026745de9d05bd6f491d26603f",
      "parents": [
        "90fa1527bddc7147dc0d590ee6184ca88bc50ecf"
      ],
      "author": {
        "name": "Takahiro Yasui",
        "email": "tyasui@redhat.com",
        "time": "Tue Jan 06 03:04:56 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:56 2009 +0000"
      },
      "message": "dm log: fix dm_io_client leak on error paths\n\nIn create_log_context function, dm_io_client_destroy function needs\nto be called, when memory allocation of disk_header, sync_bits and\nrecovering_bits failed, but dm_io_client_destroy is not called.\n\nCc: stable@kernel.org\nSigned-off-by: Takahiro Yasui \u003ctyasui@redhat.com\u003e\nAcked-by: Jonathan Brassow \u003cjbrassow@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "90fa1527bddc7147dc0d590ee6184ca88bc50ecf",
      "tree": "a6b692b5a7ef777cbd8f2927783f593234b091d1",
      "parents": [
        "a1b51e98676932d031f5eec1325b2df4bbdc8f26"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Tue Jan 06 03:04:54 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:54 2009 +0000"
      },
      "message": "dm snapshot: change yield to msleep\n\nChange yield() to msleep(1). If the thread had realtime priority,\nyield() doesn\u0027t really yield, so the yielding process would loop\nindefinitely and cause machine lockup.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "a1b51e98676932d031f5eec1325b2df4bbdc8f26",
      "tree": "0dda5c172f6ef1880dbc9eafb9eb6d404c9447c6",
      "parents": [
        "fe0bdec68b77020281dc814805edfe594ae89e0f"
      ],
      "author": {
        "name": "Mikulas Patocka",
        "email": "mpatocka@redhat.com",
        "time": "Tue Jan 06 03:04:53 2009 +0000"
      },
      "committer": {
        "name": "Alasdair G Kergon",
        "email": "agk@redhat.com",
        "time": "Tue Jan 06 03:04:53 2009 +0000"
      },
      "message": "dm table: drop reference at unbind\n\nMove one dm_table_put() so that the last reference in the thread\ngets dropped in __unbind().\n\nThis is required for a following patch,\ndm-table-rework-reference-counting.patch, which will change the logic in\nsuch a way that table destructor is called only at specific points in\nthe code.\n\nSigned-off-by: Mikulas Patocka \u003cmpatocka@redhat.com\u003e\nSigned-off-by: Alasdair G Kergon \u003cagk@redhat.com\u003e\n"
    },
    {
      "commit": "8e128ce3318a147903c893de1891f6c2306f8a61",
      "tree": "3b45e780570e9beb9ec8e83c677f2d9fd9b458ce",
      "parents": [
        "0bbb2753584231db364b624bf8cf82551b94da7d",
        "3f874b6643e189d3d07618928ceed0013d71593e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:04:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:04:09 2009 -0800"
      },
      "message": "Merge branch \u0027for-next\u0027 of git://git.o-hand.com/linux-mfd\n\n* \u0027for-next\u0027 of git://git.o-hand.com/linux-mfd: (30 commits)\n  mfd: Fix section mismatch in da903x\n  mfd: move drivers/i2c/chips/menelaus.c to drivers/mfd\n  mfd: move drivers/i2c/chips/tps65010.c to drivers/mfd\n  mfd: dm355evm msp430 driver\n  mfd: Add missing break from wm3850-core\n  mfd: Add WM8351 support\n  mfd: Support configurable numbers of DCDCs and ISINKs on WM8350\n  mfd: Handle missing WM8350 platform data\n  mfd: Add WM8352 support\n  mfd: Use irq_to_desc in twl4030 code\n  power_supply: Add Dialog DA9030 battery charger driver\n  mfd: Dialog DA9030 battery charger MFD driver\n  mfd: Register WM8400 codec device\n  mfd: Pass driver_data onto child devices\n  mfd: Fix twl4030-core.c build error\n  mfd: twl4030 regulator bug fixes\n  mfd: twl4030: create some regulator devices\n  mfd: twl4030: cleanup symbols and OMAP dependency\n  mfd: twl4030: simplified child creation code\n  power_supply: Add battery health reporting for WM8350\n  ...\n"
    },
    {
      "commit": "0bbb2753584231db364b624bf8cf82551b94da7d",
      "tree": "559c49330037fa4e2f5d231e06576f80dc49caaf",
      "parents": [
        "0578c3b4d44c34e499e1fd5916ed6c63635b25cf",
        "9e01892c4234070bbcf3a9f582514c8b91464375"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:03:39 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:03:39 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:\n  module: convert to stop_machine_create/destroy.\n  stop_machine: introduce stop_machine_create/destroy.\n  parisc: fix module loading failure of large kernel modules\n  module: fix module loading failure of large kernel modules for parisc\n  module: fix warning of unused function when !CONFIG_PROC_FS\n  kernel/module.c: compare symbol values when marking symbols as exported in /proc/kallsyms.\n  remove CONFIG_KMOD\n"
    },
    {
      "commit": "0578c3b4d44c34e499e1fd5916ed6c63635b25cf",
      "tree": "7bcf1e4bb08984b2f5671a48c052c26903855ba6",
      "parents": [
        "7d8a804c594b61a05c698126165b5dc417d94a0f",
        "52942b6b16c6ebb25f4dd4df0208d840ba0cbc5c"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:03:11 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:03:11 2009 -0800"
      },
      "message": "Merge branch \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip\n\n* \u0027core-fixes-for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:\n  swiotlb: Don\u0027t include linux/swiotlb.h twice in lib/swiotlb.c\n  intel-iommu: fix build error with INTR_REMAP\u003dy and DMAR\u003dn\n  swiotlb: add missing __init annotations\n"
    },
    {
      "commit": "7d8a804c594b61a05c698126165b5dc417d94a0f",
      "tree": "5718ed900d1a8aa7d85eaa02dc27fda8230a688e",
      "parents": [
        "c58bd34d00e04df9a0691732086cf8102b20d907",
        "722d74219ea21223c74e5e894b0afcc5e4ca75a7"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:02:09 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 19:02:09 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/teigland/dlm:\n  dlm: fs/dlm/ast.c: fix warning\n  dlm: add new debugfs entry\n  dlm: add time stamp of blocking callback\n  dlm: change lock time stamping\n  dlm: improve how bast mode handling\n  dlm: remove extra blocking callback check\n  dlm: replace schedule with cond_resched\n  dlm: remove kmap/kunmap\n  dlm: trivial annotation of be16 value\n  dlm: fix up memory allocation flags\n"
    },
    {
      "commit": "c58bd34d00e04df9a0691732086cf8102b20d907",
      "tree": "82e0a95b582974351f24cdf812d023c38d921474",
      "parents": [
        "8606ab6d30dbaaafff985bd462bf33c36997eae9",
        "88f60f62f31092db46aa5c71bf6da67c958bc420"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:58:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:58:06 2009 -0800"
      },
      "message": "Merge branch \u0027i2c-next\u0027 of git://aeryn.fluff.org.uk/bjdooks/linux\n\n* \u0027i2c-next\u0027 of git://aeryn.fluff.org.uk/bjdooks/linux:\n  i2c-omap: fix type of irq handler function\n  i2c-s3c2410: Change IRQ to be plain integer.\n  i2c-s3c2410: Allow more than one i2c-s3c2410 adapter\n  i2c-s3c2410: Remove default platform data.\n  i2c-s3c2410: Use platform data for gpio configuration\n  i2c-s3c2410: Fixup style problems from checkpatch.pl\n  i2c-omap: Enable I2C wakeups for 34xx\n  i2c-omap: reprogram OCP_SYSCONFIG register after reset\n  i2c-omap: convert \u0027rev1\u0027 flag to generic \u0027rev\u0027 u8\n  i2c-omap: fix I2C timeouts due to recursive omap_i2c_{un,}idle()\n  i2c-omap: Clean-up i2c-omap\n  i2c-omap: Don\u0027t compile in OMAP15xx I2C ISR for non-OMAP15xx builds\n  i2c-omap: Mark init-only functions as __init\n  i2c-omap: Add support for omap34xx\n  i2c-omap: FIFO handling support and broken hw workaround for i2c-omap\n  i2c-omap: Add high-speed support to omap-i2c\n  i2c-omap: Close suspected race between omap_i2c_idle() and omap_i2c_isr()\n  i2c-omap: Do not use interruptible wait call in omap_i2c_xfer_msg\n\nFix up apparently-trivial conflict in drivers/i2c/busses/i2c-s3c2410.c\n"
    },
    {
      "commit": "8606ab6d30dbaaafff985bd462bf33c36997eae9",
      "tree": "4a31a004438370e5e51f5f042badfac850ec9ac8",
      "parents": [
        "c54febae996d36c630f09209cd9983ecfda3fcad",
        "ed42350e02bfcb333024949e9653d06916135cc5"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:53:34 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:53:34 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (22 commits)\n  HID: fix error condition propagation in hid-sony driver\n  HID: fix reference count leak hidraw\n  HID: add proper support for pensketch 12x9 tablet\n  HID: don\u0027t allow DealExtreme usb-radio be handled by usb hid driver\n  HID: fix default Kconfig setting for TopSpeed driver\n  HID: driver for TopSeed Cyberlink quirky remote\n  HID: make boot protocol drivers depend on EMBEDDED\n  HID: avoid sparse warning in HID_COMPAT_LOAD_DRIVER\n  HID: hiddev cleanup -- handle all error conditions properly\n  HID: force feedback driver for GreenAsia 0x12 PID\n  HID: switch specialized drivers from \"default y\" to !EMBEDDED\n  HID: set proper dev.parent in hidraw\n  HID: add dynids facility\n  HID: use GFP_KERNEL in hid_alloc_buffers\n  HID: usbhid, use usb_endpoint_xfer_int\n  HID: move usbhid flags to usbhid.h\n  HID: add n-trig digitizer support\n  HID: add phys and name ioctls to hidraw\n  HID: struct device - replace bus_id with dev_name(), dev_set_name()\n  HID: automatically call usbhid_set_leds in usbhid driver\n  ...\n"
    },
    {
      "commit": "c54febae996d36c630f09209cd9983ecfda3fcad",
      "tree": "35b2717dcd4e4ff2206cd468b5895afb16f49c8c",
      "parents": [
        "e42e4ba07bc72c0eb7c7ab3bf9e5076db90d0f37",
        "eb8374e71f941a1b3c2ed6ea19dc809e7124dc5d"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:52:54 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:52:54 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/steve/gfs2-2.6-nmw: (27 commits)\n  GFS2: Use DEFINE_SPINLOCK\n  GFS2: Fix use-after-free bug on umount (try #2)\n  Revert \"GFS2: Fix use-after-free bug on umount\"\n  GFS2: Streamline alloc calculations for writes\n  GFS2: Send useful information with uevent messages\n  GFS2: Fix use-after-free bug on umount\n  GFS2: Remove ancient, unused code\n  GFS2: Move four functions from super.c\n  GFS2: Fix bug in gfs2_lock_fs_check_clean()\n  GFS2: Send some sensible sysfs stuff\n  GFS2: Kill two daemons with one patch\n  GFS2: Move gfs2_recoverd into recovery.c\n  GFS2: Fix \"truncate in progress\" hang\n  GFS2: Clean up \u0026 move gfs2_quotad\n  GFS2: Add more detail to debugfs glock dumps\n  GFS2: Banish struct gfs2_rgrpd_host\n  GFS2: Move rg_free from gfs2_rgrpd_host to gfs2_rgrpd\n  GFS2: Move rg_igeneration into struct gfs2_rgrpd\n  GFS2: Banish struct gfs2_dinode_host\n  GFS2: Move i_size from gfs2_dinode_host and rename it to i_disksize\n  ...\n"
    },
    {
      "commit": "e42e4ba07bc72c0eb7c7ab3bf9e5076db90d0f37",
      "tree": "f3eec0c563da05c2f0de3463edd45735c9c2f3c7",
      "parents": [
        "7a1fcd5f5130f173b5e824135735ec58f245563e"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:47:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:47:12 2009 -0800"
      },
      "message": "igb: fix anoying type mismatch warning on rx/tx queue sizing\n\nWhen using \"min()\", the types of both sides should match.  With the cpu\nmask changes, the type of num_online_cpus() will now depend on config\noptions. Use \"min_t()\" with an explicit type instead.\n\nAnd make the rx/tx case look the same too, just for sanity.\n\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7a1fcd5f5130f173b5e824135735ec58f245563e",
      "tree": "fc21e9f5592ef58a5d98a4bf1ccd6f44010cbca3",
      "parents": [
        "15b0669072127f282896b3bef2e9df4ec5d7264f",
        "4696b64d234b84b5b70ffd49a76833aa5c49cb61"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:45:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:45:06 2009 -0800"
      },
      "message": "Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6\n\n* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: (30 commits)\n  sparc: Fix minor SPARC32 compile error\n  sparc: Remove reg*.h from Kbuild\n  sparc: Clean arch-specific code in prom_common.c\n  sparc: Kill asm/reg*.h\n  sparc: Use 64BIT config entry\n  MAINTAINERS: update sparc maintainer\n  sparc: unify ipcbuf.h\n  sparc: Update 64-bit defconfig.\n  sparc: remove NO_PROC_ID - it is no longer used\n  sparc: drop get_tbr() in traps.h\n  sparc: fix warning in userspace header traps.h\n  sparc: fix warnings in userspace header byteorder.h\n  sparc: fix warning in userspace header jsflash.h\n  sparc: unify openprom.h\n  sparc64: delete unused linux_prom64_ranges from openprom_64.h\n  sparc: prepare openprom for unification\n  sparc: remove linux_prom_pci_assigned_addresses from openprom_32.h\n  sparc: remove ebus definitions from openprom*.h\n  sparc: unify siginfo.h\n  sparc: unify ptrace.h\n  ...\n"
    },
    {
      "commit": "15b0669072127f282896b3bef2e9df4ec5d7264f",
      "tree": "8480e09bbc7c26cd5c9ef048b734664cb6fe76be",
      "parents": [
        "c155b914651753f843445d2f860bc00137df5d52",
        "3537d54c0c39de5738bba8d19f128478b0b96a71"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:44:59 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:44:59 2009 -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: (44 commits)\n  qlge: Fix sparse warnings for tx ring indexes.\n  qlge: Fix sparse warning regarding rx buffer queues.\n  qlge: Fix sparse endian warning in ql_hw_csum_setup().\n  qlge: Fix sparse endian warning for inbound packet control block flags.\n  qlge: Fix sparse warnings for byte swapping in qlge_ethool.c\n  myri10ge: print MAC and serial number on probe failure\n  pkt_sched: cls_u32: Fix locking in u32_change()\n  iucv: fix cpu hotplug\n  af_iucv: Free iucv path/socket in path_pending callback\n  af_iucv: avoid left over IUCV connections from failing connects\n  af_iucv: New error return codes for connect()\n  net/ehea: bitops work on unsigned longs\n  Revert \"net: Fix for initial link state in 2.6.28\"\n  tcp: Kill extraneous SPLICE_F_NONBLOCK checks.\n  tcp: don\u0027t mask EOF and socket errors on nonblocking splice receive\n  dccp: Integrate the TFRC library with DCCP\n  dccp: Clean up ccid.c after integration of CCID plugins\n  dccp: Lockless integration of CCID congestion-control plugins\n  qeth: get rid of extra argument after printk to dev_* conversion\n  qeth: No large send using EDDP for HiperSockets.\n  ...\n"
    },
    {
      "commit": "c155b914651753f843445d2f860bc00137df5d52",
      "tree": "8a90674dfad7dd7e470d64819f8b7b490de35c2d",
      "parents": [
        "e9af797d757d358f60130de6ca59ee658d666561",
        "3a5e1d1792729f384c10db966feb8bab76c991ed"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:34:12 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:34:12 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:\n  ALSA: ice1724 - Fix a typo in IEC958 PCM name\n  ASoC: fix davinci-sffsdr buglet\n  ALSA: sound/usb: Use negated usb_endpoint_xfer_control, etc\n  ALSA: hda - cxt5051 report jack state\n  ALSA: hda - add basic jack reporting functions to patch_conexant.c\n  ALSA: Use usb_set/get_intfdata\n  ASoC: Clean up kerneldoc warnings\n  ASoC: Fix pxa2xx-pcm checks for invalid DMA channels\n  LSA: hda - Add HP Acacia detection\n  ALSA: hda - fix name for ALC1200\n  ALSA: sound/usb: use USB API functions rather than constants\n  ASoC: TWL4030: DAPM based capture implementation\n  ASoC: TWL4030: Make the enum filter generic for twl4030\n"
    },
    {
      "commit": "e9af797d757d358f60130de6ca59ee658d666561",
      "tree": "1c634c98b2c11ddfa86d1c38e35ed33eb316827c",
      "parents": [
        "10cc04f5a01041ffff068b3f9b195bfdc5290c45",
        "187d9f4ed4fc089f1f25a875fb485e27626972f9"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:33:38 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:33:38 2009 -0800"
      },
      "message": "Merge branch \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq\n\n* \u0027next\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:\n  [CPUFREQ] Fix on resume, now preserves user policy min/max.\n  [CPUFREQ] Add Celeron Core support to p4-clockmod.\n  [CPUFREQ] add to speedstep-lib additional fsb values for core processors\n  [CPUFREQ] Disable sysfs ui for p4-clockmod.\n  [CPUFREQ] p4-clockmod: reduce noise\n  [CPUFREQ] clean up speedstep-centrino and reduce cpumask_t usage\n"
    },
    {
      "commit": "10cc04f5a01041ffff068b3f9b195bfdc5290c45",
      "tree": "5c53027ce5299075759b70e1447ce811ba1afdf0",
      "parents": [
        "520c85346666d4d9a6fcaaa8450542302dc28b91",
        "9047beabb8a396f0b18de1e4a9ab920cf92054af"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:43 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:43 2009 -0800"
      },
      "message": "Merge branch \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2\n\n* \u0027upstream-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/mfasheh/ocfs2: (138 commits)\n  ocfs2: Access the right buffer_head in ocfs2_merge_rec_left.\n  ocfs2: use min_t in ocfs2_quota_read()\n  ocfs2: remove unneeded lvb casts\n  ocfs2: Add xattr support checking in init_security\n  ocfs2: alloc xattr bucket in ocfs2_xattr_set_handle\n  ocfs2: calculate and reserve credits for xattr value in mknod\n  ocfs2/xattr: fix credits calculation during index create\n  ocfs2/xattr: Always updating ctime during xattr set.\n  ocfs2/xattr: Remove extend_trans call and add its credits from the beginning\n  ocfs2/dlm: Fix race during lockres mastery\n  ocfs2/dlm: Fix race in adding/removing lockres\u0027 to/from the tracking list\n  ocfs2/dlm: Hold off sending lockres drop ref message while lockres is migrating\n  ocfs2/dlm: Clean up errors in dlm_proxy_ast_handler()\n  ocfs2/dlm: Fix a race between migrate request and exit domain\n  ocfs2: One more hamming code optimization.\n  ocfs2: Another hamming code optimization.\n  ocfs2: Don\u0027t hand-code xor in ocfs2_hamming_encode().\n  ocfs2: Enable metadata checksums.\n  ocfs2: Validate superblock with checksum and ecc.\n  ocfs2: Checksum and ECC for directory blocks.\n  ...\n"
    },
    {
      "commit": "520c85346666d4d9a6fcaaa8450542302dc28b91",
      "tree": "9c9cc9e2493b606104dd8602302ae28258ebeac0",
      "parents": [
        "e8c82c2e23e3527e0c9dc195e432c16784d270fa",
        "4ae8978cf92a96257cd8998a49e781be83571d64"
      ],
      "author": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:32:06 2009 -0800"
      },
      "message": "Merge branch \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6\n\n* \u0027for-linus\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:\n  inotify: fix type errors in interfaces\n  fix breakage in reiserfs_new_inode()\n  fix the treatment of jfs special inodes\n  vfs: remove duplicate code in get_fs_type()\n  add a vfs_fsync helper\n  sys_execve and sys_uselib do not call into fsnotify\n  zero i_uid/i_gid on inode allocation\n  inode-\u003ei_op is never NULL\n  ntfs: don\u0027t NULL i_op\n  isofs check for NULL -\u003ei_op in root directory is dead code\n  affs: do not zero -\u003ei_op\n  kill suid bit only for regular files\n  vfs: lseek(fd, 0, SEEK_CUR) race condition\n"
    },
    {
      "commit": "e8c82c2e23e3527e0c9dc195e432c16784d270fa",
      "tree": "943b1359ff8d6855b0b5fd37bb0ae61f01a7da0d",
      "parents": [
        "f1b11e505463fd597ab7963df26dd1f446dcceae"
      ],
      "author": {
        "name": "Nick Piggin",
        "email": "npiggin@suse.de",
        "time": "Tue Jan 06 03:05:50 2009 +0100"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:31:12 2009 -0800"
      },
      "message": "mm lockless pagecache barrier fix\n\nAn XFS workload showed up a bug in the lockless pagecache patch. Basically it\nwould go into an \"infinite\" loop, although it would sometimes be able to break\nout of the loop! The reason is a missing compiler barrier in the \"increment\nreference count unless it was zero\" case of the lockless pagecache protocol in\nthe gang lookup functions.\n\nThis would cause the compiler to use a cached value of struct page pointer to\nretry the operation with, rather than reload it. So the page might have been\nremoved from pagecache and freed (refcount\u003d\u003d0) but the lookup would not correctly\nnotice the page is no longer in pagecache, and keep attempting to increment the\nrefcount and failing, until the page gets reallocated for something else. This\nisn\u0027t a data corruption because the condition will be detected if the page has\nbeen reallocated. However it can result in a lockup.\n\nLinus points out that ACCESS_ONCE is also required in that pointer load, even\nif it\u0027s absence is not causing a bug on our particular build. The most general\nway to solve this is just to put an rcu_dereference in radix_tree_deref_slot.\n\nAssembly of find_get_pages,\nbefore:\n.L220:\n        movq    (%rbx), %rax    #* ivtmp.1162, tmp82\n        movq    (%rax), %rdi    #, prephitmp.1149\n.L218:\n        testb   $1, %dil        #, prephitmp.1149\n        jne     .L217   #,\n        testq   %rdi, %rdi      # prephitmp.1149\n        je      .L203   #,\n        cmpq    $-1, %rdi       #, prephitmp.1149\n        je      .L217   #,\n        movl    8(%rdi), %esi   # \u003cvariable\u003e._count.counter, c\n        testl   %esi, %esi      # c\n        je      .L218   #,\n\nafter:\n.L212:\n        movq    (%rbx), %rax    #* ivtmp.1109, tmp81\n        movq    (%rax), %rdi    #, ret\n        testb   $1, %dil        #, ret\n        jne     .L211   #,\n        testq   %rdi, %rdi      # ret\n        je      .L197   #,\n        cmpq    $-1, %rdi       #, ret\n        je      .L211   #,\n        movl    8(%rdi), %esi   # \u003cvariable\u003e._count.counter, c\n        testl   %esi, %esi      # c\n        je      .L212   #,\n\n(notice the obvious infinite loop in the first example, if page-\u003ecount remains 0)\n\nSigned-off-by: Nick Piggin \u003cnpiggin@suse.de\u003e\nReviewed-by: Paul E. McKenney \u003cpaulmck@linux.vnet.ibm.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "f1b11e505463fd597ab7963df26dd1f446dcceae",
      "tree": "56f234bbbee8a67cfa4f3dc42bc56bc658d01cd9",
      "parents": [
        "046c68842bce6b77509cf56e94a561029124b0ce"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 05 14:04:40 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 18:28:04 2009 -0800"
      },
      "message": "i2o: Update my address\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "3537d54c0c39de5738bba8d19f128478b0b96a71",
      "tree": "5ecdf9eb604ffa869bf9034928adfbcc8d4ffb3b",
      "parents": [
        "2c9a0d41e944807bf763f42e4a3526210e98c741"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Mon Jan 05 18:19:59 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:19:59 2009 -0800"
      },
      "message": "qlge: Fix sparse warnings for tx ring indexes.\n\nWarnings:\ndrivers/net/qlge/qlge_main.c:1474:34: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1475:36: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1592:51: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1941:20: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:1941:20:    expected restricted unsigned int [usertype] tid\ndrivers/net/qlge/qlge_main.c:1941:20:    got int [signed] index\ndrivers/net/qlge/qlge_main.c:1945:24: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:1945:24:    expected restricted unsigned int [usertype] txq_idx\ndrivers/net/qlge/qlge_main.c:1945:24:    got unsigned int [unsigned] [usertype] tx_ring_idx\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "2c9a0d41e944807bf763f42e4a3526210e98c741",
      "tree": "5c770c22db6a1e1ec9ce5ac1922436317441e4d1",
      "parents": [
        "fd2df4f7439cd3e87090e067d5aec8f1336f4f0e"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Mon Jan 05 18:19:20 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:19:20 2009 -0800"
      },
      "message": "qlge: Fix sparse warning regarding rx buffer queues.\n\nWarnings:\ndrivers/net/qlge/qlge_main.c:909:17: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:909:17:    expected unsigned int [unsigned] [usertype] addr_lo\ndrivers/net/qlge/qlge_main.c:909:17:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:911:17: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:911:17:    expected unsigned int [unsigned] [usertype] addr_hi\ndrivers/net/qlge/qlge_main.c:911:17:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:974:17: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:974:17:    expected unsigned int [unsigned] [usertype] addr_lo\ndrivers/net/qlge/qlge_main.c:974:17:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:975:17: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:975:17:    expected unsigned int [unsigned] [usertype] addr_hi\ndrivers/net/qlge/qlge_main.c:975:17:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:2132:16: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:2132:16:    expected unsigned int [unsigned] [usertype] addr_lo\ndrivers/net/qlge/qlge_main.c:2132:16:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:2133:16: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:2133:16:    expected unsigned int [unsigned] [usertype] addr_hi\ndrivers/net/qlge/qlge_main.c:2133:16:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:2212:15: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:2212:15:    expected unsigned int [unsigned] [usertype] addr_lo\ndrivers/net/qlge/qlge_main.c:2212:15:    got restricted unsigned int [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:2214:15: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:2214:15:    expected unsigned int [unsigned] [usertype] addr_hi\ndrivers/net/qlge/qlge_main.c:2214:15:    got restricted unsigned int [usertype] \u003cnoident\u003e\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "fd2df4f7439cd3e87090e067d5aec8f1336f4f0e",
      "tree": "b889d344981a9c1a97a879d89eae2a4103be9397",
      "parents": [
        "a303ce0972d04036316e85568682a2b89fe123d9"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Mon Jan 05 18:18:45 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:18:45 2009 -0800"
      },
      "message": "qlge: Fix sparse endian warning in ql_hw_csum_setup().\n\nChanged u16 to __sum16 usage.\n\nWarnings:\ndrivers/net/qlge/qlge_main.c:1897:9: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:1897:9:    expected unsigned short [usertype] *check\ndrivers/net/qlge/qlge_main.c:1897:9:    got restricted unsigned short *\u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:1903:9: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:1903:9:    expected unsigned short [usertype] *check\ndrivers/net/qlge/qlge_main.c:1903:9:    got restricted unsigned short *\u003cnoident\u003e\ndrivers/net/qlge/qlge_main.c:1909:9: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_main.c:1909:9:    expected unsigned short [unsigned] [short] [usertype] \u003cnoident\u003e\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "a303ce0972d04036316e85568682a2b89fe123d9",
      "tree": "d532177ae6549de9d6360da8eb366d3de3add588",
      "parents": [
        "8306c952a523ad2f87c101427c3ece91176b822c"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Mon Jan 05 18:18:22 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:18:22 2009 -0800"
      },
      "message": "qlge: Fix sparse endian warning for inbound packet control block flags.\n\nChanged flags element from __le32 to 3 reserved bytes and one byte of\nflags.  Changed flags bit definitions to reflect byte width instead of\n__le32 width.\n\nWarnings:\ndrivers/net/qlge/qlge_main.c:1206:16: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1207:16: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1233:17: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1276:17: warning: restricted degrades to integer\ndrivers/net/qlge/qlge_main.c:1349:19: warning: restricted degrades to integer\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "8306c952a523ad2f87c101427c3ece91176b822c",
      "tree": "a753b27960554173faa65603c70e1fa72341d415",
      "parents": [
        "0f840011f0396dcb97ca82c64fd43f6990a574dd"
      ],
      "author": {
        "name": "Ron Mercer",
        "email": "ron.mercer@qlogic.com",
        "time": "Mon Jan 05 18:17:33 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:17:33 2009 -0800"
      },
      "message": "qlge: Fix sparse warnings for byte swapping in qlge_ethool.c\n\ndrivers/net/qlge/qlge_ethtool.c:59:23: warning: cast to restricted type\ndrivers/net/qlge/qlge_ethtool.c:59:21: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_ethtool.c:59:21:    expected restricted unsigned short [usertype] irq_delay\ndrivers/net/qlge/qlge_ethtool.c:59:21:    got unsigned short [unsigned] [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_ethtool.c:61:8: warning: cast to restricted type\ndrivers/net/qlge/qlge_ethtool.c:60:21: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_ethtool.c:60:21:    expected restricted unsigned short [usertype] pkt_delay\ndrivers/net/qlge/qlge_ethtool.c:60:21:    got unsigned short [unsigned] [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_ethtool.c:82:23: warning: cast to restricted type\ndrivers/net/qlge/qlge_ethtool.c:82:21: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_ethtool.c:82:21:    expected restricted unsigned short [usertype] irq_delay\ndrivers/net/qlge/qlge_ethtool.c:82:21:    got unsigned short [unsigned] [usertype] \u003cnoident\u003e\ndrivers/net/qlge/qlge_ethtool.c:84:8: warning: cast to restricted type\ndrivers/net/qlge/qlge_ethtool.c:83:21: warning: incorrect type in assignment (different base types)\ndrivers/net/qlge/qlge_ethtool.c:83:21:    expected restricted unsigned short [usertype] pkt_delay\ndrivers/net/qlge/qlge_ethtool.c:83:21:    got unsigned short [unsigned] [usertype] \u003cnoident\u003e\n\nSigned-off-by: Ron Mercer \u003cron.mercer@qlogic.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "0f840011f0396dcb97ca82c64fd43f6990a574dd",
      "tree": "364629a3d51dedfbb4e6e0641c086a464c23d616",
      "parents": [
        "6f57321422e0d359e83c978c2b03db77b967b7d5"
      ],
      "author": {
        "name": "Brice Goglin",
        "email": "brice@myri.com",
        "time": "Mon Jan 05 18:16:14 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:16:14 2009 -0800"
      },
      "message": "myri10ge: print MAC and serial number on probe failure\n\nTo help board identification and diagnosis, print the MAC\nand serial number on probe failure if they are available.\n\nSigned-off-by: Brice Goglin \u003cbrice@myri.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "6f57321422e0d359e83c978c2b03db77b967b7d5",
      "tree": "80d92a8fff5b5ae27ca618f34acf9d696289d6ba",
      "parents": [
        "f1d3e4dca3f8d4f55656477e83d0afe0ea7cbaed"
      ],
      "author": {
        "name": "Jarek Poplawski",
        "email": "jarkao2@gmail.com",
        "time": "Mon Jan 05 18:14:19 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:14:19 2009 -0800"
      },
      "message": "pkt_sched: cls_u32: Fix locking in u32_change()\n\nNew nodes are inserted in u32_change() under rtnl_lock() with wmb(),\nso without tcf_tree_lock() like in other classifiers (e.g. cls_fw).\nThis isn\u0027t enough without rmb() on the read side, but on the other\nhand adding such barriers doesn\u0027t give any savings, so the lock is\nadded instead.\n\nReported-by: m0sia \u003cm0sia@plotinka.ru\u003e\nSigned-off-by: Jarek Poplawski \u003cjarkao2@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "4696b64d234b84b5b70ffd49a76833aa5c49cb61",
      "tree": "c1a1a647395e1b24395dee7b34501d12bdce3e40",
      "parents": [
        "576b4d0cce9716a3a6c67ded27a638ef833b0a54"
      ],
      "author": {
        "name": "Julian Calaby",
        "email": "julian.calaby@gmail.com",
        "time": "Mon Jan 05 18:13:49 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:13:49 2009 -0800"
      },
      "message": "sparc: Fix minor SPARC32 compile error\n\nWhen CONFIG_PROC_FS is unset, include/linux/interrupt.h defines\ninit_irq_proc() as an empty function.\n\narch/sparc/kernel/irq_32.c defines this function unconditionally.\n\nFix the latter so that it only defines this function when CONFIG_PROC_FS\nis set.\n\nThis fixes the following error:\narch/sparc/kernel/irq_32.c:672: error: redefinition of \u0027init_irq_proc\u0027\ninclude/linux/interrupt.h:461: error: previous definition of\n\u0027init_irq_proc\u0027 was here\n\nThis was found using randconfig builds.\n\nSigned-off-by: Julian Calaby \u003cjulian.calaby@gmail.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "f1d3e4dca3f8d4f55656477e83d0afe0ea7cbaed",
      "tree": "1d2d2ebc94dd4b18d26f25cd062bea741f85237e",
      "parents": [
        "65dbd7c2778f1921ef1ee2a73e47a2a126fed30f"
      ],
      "author": {
        "name": "Heiko Carstens",
        "email": "heiko.carstens@de.ibm.com",
        "time": "Mon Jan 05 18:09:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:09:02 2009 -0800"
      },
      "message": "iucv: fix cpu hotplug\n\nIf the iucv module is compiled in/loaded but no user is registered cpu\nhot remove doesn\u0027t work. Reason for that is that the iucv cpu hotplug\nnotifier on CPU_DOWN_PREPARE checks if the iucv_buffer_cpumask would\nbe empty after the corresponding bit would be cleared. However the bit\nwas never set since iucv wasn\u0027t enable. That causes all cpu hot unplug\noperations to fail in this scenario.\nTo fix this use iucv_path_table as an indicator wether iucv is enabled\nor not.\n\nSigned-off-by: Heiko Carstens \u003cheiko.carstens@de.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "65dbd7c2778f1921ef1ee2a73e47a2a126fed30f",
      "tree": "12b6b4517fcc202fe1246c2c87e540cf135fa2d4",
      "parents": [
        "18becbc5479f88d5adc218374ca62b8b93ec2545"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Mon Jan 05 18:08:23 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:08:23 2009 -0800"
      },
      "message": "af_iucv: Free iucv path/socket in path_pending callback\n\nFree iucv path after iucv_path_sever() calls in iucv_callback_connreq()\n(path_pending() iucv callback).\nIf iucv_path_accept() fails, free path and free/kill newly created socket.\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "18becbc5479f88d5adc218374ca62b8b93ec2545",
      "tree": "c99569ff4d63df5cef410152fbb83d74c683f8be",
      "parents": [
        "55cdea9ed9cf2d76993e40ed7a1fc649a14db07c"
      ],
      "author": {
        "name": "Ursula Braun",
        "email": "ursula.braun@de.ibm.com",
        "time": "Mon Jan 05 18:07:46 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:07:46 2009 -0800"
      },
      "message": "af_iucv: avoid left over IUCV connections from failing connects\n\nFor certain types of AFIUCV socket connect failures IUCV connections\nare left over. Add some cleanup-statements to avoid cluttered IUCV\nconnections.\n\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "55cdea9ed9cf2d76993e40ed7a1fc649a14db07c",
      "tree": "86a4fb463649731d88c6495fbd029f5751e578a2",
      "parents": [
        "48e4cc777c091b037acaf39036a77ece43fe1ab9"
      ],
      "author": {
        "name": "Hendrik Brueckner",
        "email": "brueckner@linux.vnet.ibm.com",
        "time": "Mon Jan 05 18:07:07 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 18:07:07 2009 -0800"
      },
      "message": "af_iucv: New error return codes for connect()\n\nIf the iucv_path_connect() call fails then return an error code that\ncorresponds to the iucv_path_connect() failure condition; instead of\nreturning -ECONNREFUSED for any failure.\n\nThis helps to improve error handling for user space applications\n(e.g.  inform the user that the z/VM guest is not authorized to\nconnect to other guest virtual machines).\n\nThe error return codes are based on those described in connect(2).\n\nSigned-off-by: Hendrik Brueckner \u003cbrueckner@linux.vnet.ibm.com\u003e\nSigned-off-by: Ursula Braun \u003cursula.braun@de.ibm.com\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "046c68842bce6b77509cf56e94a561029124b0ce",
      "tree": "1a355899ba92ce4059027264cf759986234a930c",
      "parents": [
        "5641f1fde074651ce2488e93944cf05dedd9bf74"
      ],
      "author": {
        "name": "Alan Cox",
        "email": "alan@lxorguk.ukuu.org.uk",
        "time": "Mon Jan 05 14:06:29 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 17:44:42 2009 -0800"
      },
      "message": "mm: update my address\n\nSigned-off-by: Alan Cox \u003calan@redhat.com\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "5641f1fde074651ce2488e93944cf05dedd9bf74",
      "tree": "2ee93ad7f01ead38be0e16dd0ca23bbd20de4131",
      "parents": [
        "7483cb7bbc02b9471dda28e54f41287d5374e3ac"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Jan 05 17:19:02 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 17:41:45 2009 -0800"
      },
      "message": "X86_DEBUGCTLMSR won\u0027t work on uml\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "7483cb7bbc02b9471dda28e54f41287d5374e3ac",
      "tree": "551b26b32b7e83c935b0a88907d75c7416146541",
      "parents": [
        "22409f9c80d0a742ff98d1cfe1bf60fce1927be1"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Jan 05 17:18:52 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 17:41:45 2009 -0800"
      },
      "message": "uml got broken by commit 30742d5c2277c325fb0e9d2d817d55a19995fe8f\n\n... if you revert a commit, revert the fixups elsewhere that had been\ntriggered by it.  Such as 8c56250f48347750c82ab18d98d647dcf99ca674\n(lockdep, UML: fix compilation when CONFIG_TRACE_IRQFLAGS_SUPPORT is not set).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "22409f9c80d0a742ff98d1cfe1bf60fce1927be1",
      "tree": "f95de35847d30855c20db415ac3010ea096e5772",
      "parents": [
        "fe0bdec68b77020281dc814805edfe594ae89e0f"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@ftp.linux.org.uk",
        "time": "Mon Jan 05 17:18:42 2009 +0000"
      },
      "committer": {
        "name": "Linus Torvalds",
        "email": "torvalds@linux-foundation.org",
        "time": "Mon Jan 05 17:41:45 2009 -0800"
      },
      "message": "get rid of the last symlink in uml build\n\nWe need to make asm-offsets.h contents visible for objects built\nwith userland headers.  Instead of creating a symlink, just have the\nfile with equivalent include (relative to location of header) created\nonce.  That kills the last symlink used in arch/um builds.\n\nAdditionally, both generated headers can become dependencies of\narchprepare now, killing the misuse of prepare.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\nSigned-off-by: Linus Torvalds \u003ctorvalds@linux-foundation.org\u003e\n"
    },
    {
      "commit": "48e4cc777c091b037acaf39036a77ece43fe1ab9",
      "tree": "339831eed5702871dd5502cbd7f3fef4799b397a",
      "parents": [
        "c276e098d3ee33059b4a1c747354226cec58487c"
      ],
      "author": {
        "name": "Stephen Rothwell",
        "email": "sfr@canb.auug.org.au",
        "time": "Mon Jan 05 16:06:02 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 16:06:02 2009 -0800"
      },
      "message": "net/ehea: bitops work on unsigned longs\n\nThe flags field of struct ehea_port is only used with test_bit(),\nclear_bit() and set_bit() and these interfaces only work on\n\"unsigned long\"s, so change the field to be an \"unsigned long\".  Also,\nthis field only has two bits defined for it (0 and 1) so will still be\nfine if someone builds this driver for a 32 bit arch (at least as far as\nthis flags field is concerned).\n\nAlso note that ehea_driver_flags is only used in ehca_main.c, so make it\nstatic in there.\n\nSigned-off-by: Stephen Rothwell \u003csfr@canb.auug.org.au\u003e\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "c276e098d3ee33059b4a1c747354226cec58487c",
      "tree": "df833d2e6719dd83f219a846520a581b152d5332",
      "parents": [
        "7945cc6464a4db0caf6dfacdfe05806051c4cb7b"
      ],
      "author": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 16:01:51 2009 -0800"
      },
      "committer": {
        "name": "David S. Miller",
        "email": "davem@davemloft.net",
        "time": "Mon Jan 05 16:01:51 2009 -0800"
      },
      "message": "Revert \"net: Fix for initial link state in 2.6.28\"\n\nThis reverts commit 22604c866889c4b2e12b73cbf1683bda1b72a313.\n\nWe can\u0027t fix this issue in this way, because we now can try\nto take the dev_base_lock rwlock as a writer in software interrupt\ncontext and that is not allowed without major surgery elsewhere.\n\nThis initial link state problem needs to be solved in some other\nway.\n\nSigned-off-by: David S. Miller \u003cdavem@davemloft.net\u003e\n"
    },
    {
      "commit": "3a5e1d1792729f384c10db966feb8bab76c991ed",
      "tree": "c62f5a3afb16fc8e10e04cb1dd972d9ef5e47f25",
      "parents": [
        "9d7eff608dbccceb3a5168bd240dc6262ae42459",
        "8eca75382e012b74b98526a1679ada2a1849024b"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:34:25 2009 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:34:25 2009 +0100"
      },
      "message": "Merge branch \u0027topic/misc\u0027 into for-linus\n"
    },
    {
      "commit": "9d7eff608dbccceb3a5168bd240dc6262ae42459",
      "tree": "f12831fb230857d2d93bb7b0dc0eb21175152397",
      "parents": [
        "cd8faac38c1c4ff2b404d808f6c623ab47e06475",
        "cad9d90ec3f6c497dce2b163046436b6ab5cf6b6"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:34:21 2009 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:34:21 2009 +0100"
      },
      "message": "Merge branch \u0027topic/asoc\u0027 into for-linus\n"
    },
    {
      "commit": "cad9d90ec3f6c497dce2b163046436b6ab5cf6b6",
      "tree": "7fb6bb4bd3257b7d1672ef5e79e225daadd240a0",
      "parents": [
        "ac11a2b35cc25c77d28218aaf60e7f7c6c7ee5d3",
        "5cf1c00b0ef3ba964b2ad268a55c278cf43f798f"
      ],
      "author": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:31:38 2009 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:31:38 2009 +0100"
      },
      "message": "Merge branch \u0027fixes\u0027 of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound-2.6 into topic/asoc\n"
    },
    {
      "commit": "8eca75382e012b74b98526a1679ada2a1849024b",
      "tree": "7ab234048cceac44da48cb7921ad686d5f3f98a7",
      "parents": [
        "fe0bdec68b77020281dc814805edfe594ae89e0f"
      ],
      "author": {
        "name": "Alan Horstmann",
        "email": "gineera@aspect135.co.uk",
        "time": "Mon Jan 05 18:30:04 2009 +0100"
      },
      "committer": {
        "name": "Takashi Iwai",
        "email": "tiwai@suse.de",
        "time": "Mon Jan 05 18:30:04 2009 +0100"
      },
      "message": "ALSA: ice1724 - Fix a typo in IEC958 PCM name\n\nFix trivial name string typo as reported in bug 2552.\n\nSigned-off-by: Alan Horstmann \u003cgineera@aspect135.co.uk\u003e\nSigned-off-by: Takashi Iwai \u003ctiwai@suse.de\u003e\n"
    },
    {
      "commit": "4ae8978cf92a96257cd8998a49e781be83571d64",
      "tree": "5c5e2719c17093309b4e22bfbf4deb7bd3e91ac8",
      "parents": [
        "2f1169e2dc0c70e213f79ada88a10912cc2fbe94"
      ],
      "author": {
        "name": "Michael Kerrisk",
        "email": "mtk.manpages@googlemail.com",
        "time": "Mon Jan 05 07:19:16 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:29 2009 -0500"
      },
      "message": "inotify: fix type errors in interfaces\n\nThe problems lie in the types used for some inotify interfaces, both at the kernel level and at the glibc level. This mail addresses the kernel problem. I will follow up with some suggestions for glibc changes.\n\nFor the sys_inotify_rm_watch() interface, the type of the \u0027wd\u0027 argument is\ncurrently \u0027u32\u0027, it should be \u0027__s32\u0027 .  That is Robert\u0027s suggestion, and\nis consistent with the other declarations of watch descriptors in the\nkernel source, in particular, the inotify_event structure in\ninclude/linux/inotify.h:\n\nstruct inotify_event {\n        __s32           wd;             /* watch descriptor */\n        __u32           mask;           /* watch mask */\n        __u32           cookie;         /* cookie to synchronize two events */\n        __u32           len;            /* length (including nulls) of name */\n        char            name[0];        /* stub for possible name */\n};\n\nThe patch makes the changes needed for inotify_rm_watch().\n\nSigned-off-by: Michael Kerrisk \u003cmtk.manpages@googlemail.com\u003e\nCc: Robert Love \u003crlove@google.com\u003e\nCc: Vegard Nossum \u003cvegard.nossum@gmail.com\u003e\nCc: Ulrich Drepper \u003cdrepper@redhat.com\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "2f1169e2dc0c70e213f79ada88a10912cc2fbe94",
      "tree": "887a9c427992b2a3a131ce0a90080a1b31cb7773",
      "parents": [
        "5b45d96bf963afeb931a75faf02fb424e446e5a9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Fri Jan 02 08:16:51 2009 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:29 2009 -0500"
      },
      "message": "fix breakage in reiserfs_new_inode()\n\nnow that we use ih.key earlier, we need to do all its setup early enough\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5b45d96bf963afeb931a75faf02fb424e446e5a9",
      "tree": "12f77648fc10aad3cc188537ce7a82dc9b3275a3",
      "parents": [
        "d8e9650dff48055057253ca30933605bd7d0733b"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Dec 29 07:40:31 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:29 2009 -0500"
      },
      "message": "fix the treatment of jfs special inodes\n\nWe used to put them on a single list, without any locking.  Racy.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "d8e9650dff48055057253ca30933605bd7d0733b",
      "tree": "5121e02ebb787413adfbba34ec84860474b7c660",
      "parents": [
        "4c728ef583b3d82266584da5cb068294c09df31e"
      ],
      "author": {
        "name": "Li Zefan",
        "email": "lizf@cn.fujitsu.com",
        "time": "Thu Dec 25 13:32:15 2008 +0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:29 2009 -0500"
      },
      "message": "vfs: remove duplicate code in get_fs_type()\n\nsave 14 bytes:\n\n   text    data     bss     dec     hex filename\n   1354      32       4    1390     56e fs/filesystems.o.before\n   text    data     bss     dec     hex filename\n   1340      32       4    1376     560 fs/filesystems.o\n\nSigned-off-by: Li Zefan \u003clizf@cn.fujitsu.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "4c728ef583b3d82266584da5cb068294c09df31e",
      "tree": "1252fa82b5a7cf60c0898c3da810228b4c34ebb3",
      "parents": [
        "6110e3abbff8b785907d4db50240e63c1be726e3"
      ],
      "author": {
        "name": "Christoph Hellwig",
        "email": "hch@lst.de",
        "time": "Mon Dec 22 21:11:15 2008 +0100"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "add a vfs_fsync helper\n\nFsync currently has a fdatawrite/fdatawait pair around the method call,\nand a mutex_lock/unlock of the inode mutex.  All callers of fsync have\nto duplicate this, but we have a few and most of them don\u0027t quite get\nit right.  This patch adds a new vfs_fsync that takes care of this.\nIt\u0027s a little more complicated as usual as -\u003efsync might get a NULL file\npointer and just a dentry from nfsd, but otherwise gets afile and we\nwant to take the mapping and file operations from it when it is there.\n\nNotes on the fsync callers:\n\n - ecryptfs wasn\u0027t calling filemap_fdatawrite / filemap_fdatawait on the\n   \tlower file\n - coda wasn\u0027t calling filemap_fdatawrite / filemap_fdatawait on the host\n\tfile, and returning 0 when -\u003efsync was missing\n - shm wasn\u0027t calling either filemap_fdatawrite / filemap_fdatawait nor\n   taking i_mutex.  Now given that shared memory doesn\u0027t have disk\n   backing not doing anything in fsync seems fine and I left it out of\n   the vfs_fsync conversion for now, but in that case we might just\n   not pass it through to the lower file at all but just call the no-op\n   simple_sync_file directly.\n\n[and now actually export vfs_fsync]\n\nSigned-off-by: Christoph Hellwig \u003chch@lst.de\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "6110e3abbff8b785907d4db50240e63c1be726e3",
      "tree": "79bc025df5f7e192c22df4044193abce8a5bb461",
      "parents": [
        "56ff5efad96182f4d3cb3dc6b07396762c658f16"
      ],
      "author": {
        "name": "Eric Paris",
        "email": "eparis@redhat.com",
        "time": "Wed Dec 17 13:53:20 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "sys_execve and sys_uselib do not call into fsnotify\n\nsys_execve and sys_uselib do not call into fsnotify so inotify does not get\nopen events for these types of syscalls.  This patch simply makes the\nrequisite fsnotify calls.\n\nSigned-off-by: Eric Paris \u003ceparis@redhat.com\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "56ff5efad96182f4d3cb3dc6b07396762c658f16",
      "tree": "cb91f93aa2324573527165d56d230b606a3111ed",
      "parents": [
        "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Tue Dec 09 09:34:39 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "zero i_uid/i_gid on inode allocation\n\n... and don\u0027t bother in callers.  Don\u0027t bother with zeroing i_blocks,\nwhile we are at it - it\u0027s already been zeroed.\n\ni_mode is not worth the effort; it has no common default value.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "acfa4380efe77e290d3a96b11cd4c9f24f4fbb18",
      "tree": "d656232c7ef39c83681c2de4c8e28ba439242f66",
      "parents": [
        "9742df331deb3fce95b321f38d4ea0c4e75edb63"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 10:06:33 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:28 2009 -0500"
      },
      "message": "inode-\u003ei_op is never NULL\n\nWe used to have rather schizophrenic set of checks for NULL -\u003ei_op even\nthough it had been eliminated years ago.  You\u0027d need to go out of your\nway to set it to NULL explicitly _and_ a bunch of code would die on\nsuch inodes anyway.  After killing two remaining places that still\ndid that bogosity, all that crap can go away.\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9742df331deb3fce95b321f38d4ea0c4e75edb63",
      "tree": "f7b93edcf346a890ac2b6dda0112787a68481ea8",
      "parents": [
        "261964c60ff6524076d439da9386d4782729c4d9"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:59:23 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:54:27 2009 -0500"
      },
      "message": "ntfs: don\u0027t NULL i_op\n\nit\u0027s already set to empty table (and no, ntfs doesn\u0027t have any explicit\nchecks for NULL -\u003ei_op or NULL -\u003ei_fop)\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "261964c60ff6524076d439da9386d4782729c4d9",
      "tree": "3186a2d9c09695f1be9c10d3e58e2f0ccc4357c6",
      "parents": [
        "c765d479037808532310212e9b3fa95760e975f2"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:57:25 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:38 2009 -0500"
      },
      "message": "isofs check for NULL -\u003ei_op in root directory is dead code\n\nfor one thing it never happens, for another we check that inode\nis a directory right after that place anyway (and we\u0027d already\nchecked that reading it from disk has not failed).\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "c765d479037808532310212e9b3fa95760e975f2",
      "tree": "74c9f5570a9a5477522bdf203067303b2e9ef6d3",
      "parents": [
        "7f5ff766a7babd72fc192125e12ef5570effff4c"
      ],
      "author": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Thu Dec 04 09:50:55 2008 -0500"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "affs: do not zero -\u003ei_op\n\nit is already set to empty table and should never be NULL\n\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "7f5ff766a7babd72fc192125e12ef5570effff4c",
      "tree": "c41659d7614ea70c3dc853c6187f1860d030888b",
      "parents": [
        "5b6f1eb97d462a45be3b30759758b5fdbb562c8c"
      ],
      "author": {
        "name": "Dmitri Monakhov",
        "email": "dmonakhov@openvz.org",
        "time": "Mon Dec 01 14:34:56 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "kill suid bit only for regular files\n\nWe don\u0027t have to do it because it is useless for non regular files.\nIn fact block device may trigger this path without dentry-\u003ed_inode-\u003ei_mutex.\n\n(akpm: concerns were expressed (by me) about S_ISDIR inodes)\n\nSigned-off-by: Dmitri Monakhov \u003cdmonakhov@openvz.org\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "5b6f1eb97d462a45be3b30759758b5fdbb562c8c",
      "tree": "e8f664c34dde71b95955f57caad3093581be87ef",
      "parents": [
        "7d3b56ba37a95f1f370f50258ed3954c304c524b"
      ],
      "author": {
        "name": "Alain Knaff",
        "email": "alain@knaff.lu",
        "time": "Mon Nov 10 17:08:08 2008 -0800"
      },
      "committer": {
        "name": "Al Viro",
        "email": "viro@zeniv.linux.org.uk",
        "time": "Mon Jan 05 11:53:07 2009 -0500"
      },
      "message": "vfs: lseek(fd, 0, SEEK_CUR) race condition\n\nThis patch fixes a race condition in lseek. While it is expected that\nunpredictable behaviour may result while repositioning the offset of a\nfile descriptor concurrently with reading/writing to the same file\ndescriptor, this should not happen when merely *reading* the file\ndescriptor\u0027s offset.\n\nUnfortunately, the only portable way in Unix to read a file\ndescriptor\u0027s offset is lseek(fd, 0, SEEK_CUR); however executing this\nconcurrently with read/write may mess up the position.\n\n[with fixes from akpm]\n\nSigned-off-by: Alain Knaff \u003calain@knaff.lu\u003e\nSigned-off-by: Andrew Morton \u003cakpm@linux-foundation.org\u003e\nSigned-off-by: Al Viro \u003cviro@zeniv.linux.org.uk\u003e\n"
    },
    {
      "commit": "9047beabb8a396f0b18de1e4a9ab920cf92054af",
      "tree": "abb7ea8752cd3e2fdfeaaf1609aed155d919aa7d",
      "parents": [
        "dad7d975e4bd893c79fd122105b37b9a1776816a"
      ],
      "author": {
        "name": "Tao Ma",
        "email": "tao.ma@oracle.com",
        "time": "Mon Jan 05 14:45:24 2009 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:37 2009 -0800"
      },
      "message": "ocfs2: Access the right buffer_head in ocfs2_merge_rec_left.\n\nIn commit \"ocfs2: Use metadata-specific ocfs2_journal_access_*()\nfunctions\", the wrong buffer_head is accessed. So change it\nto the right buffer_head.\n\nSigned-off-by: Tao Ma \u003ctao.ma@oracle.com\u003e\nAcked-by: Joel Becker \u003cjoel.becker@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "dad7d975e4bd893c79fd122105b37b9a1776816a",
      "tree": "b9d7b1e89cd3a59754881b2b04bb43838081709b",
      "parents": [
        "a641dc2a5a1445eb4cb491080dfc41c42a9eb37d"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Wed Dec 24 16:33:08 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:37 2009 -0800"
      },
      "message": "ocfs2: use min_t in ocfs2_quota_read()\n\nThis is preferred to min().\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "a641dc2a5a1445eb4cb491080dfc41c42a9eb37d",
      "tree": "95e33d83f3399924521febd6e886b62d4715e23c",
      "parents": [
        "38d59ef61c11cafc50a66787bdbbe80d58bbd9c0"
      ],
      "author": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Wed Dec 24 16:03:48 2008 -0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:36 2009 -0800"
      },
      "message": "ocfs2: remove unneeded lvb casts\n\ndlmglue.c has lots of code which casts the return value of ocfs2_dlm_lvb().\nThis is pointless however, as ocfs2_dlm_lvb() returns void *.\n\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "38d59ef61c11cafc50a66787bdbbe80d58bbd9c0",
      "tree": "6b8c730648dfd71374ed727646e2f54c828a98e8",
      "parents": [
        "008aafaf0b4aa0476da483e3c6e3edbe951811ff"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Wed Dec 17 10:22:56 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:36 2009 -0800"
      },
      "message": "ocfs2: Add xattr support checking in init_security\n\nWe must check whether ocfs2 volume support xattr in init_security,\nif not support xattr and security is enable, would cause failure of mknod.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "008aafaf0b4aa0476da483e3c6e3edbe951811ff",
      "tree": "2c9ac5e471a66938ed26b46220ab72ef06073112",
      "parents": [
        "0e445b6fe93c723fe8093fd04ddfeb11ae2de082"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Tue Dec 09 16:43:08 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:36 2009 -0800"
      },
      "message": "ocfs2: alloc xattr bucket in ocfs2_xattr_set_handle\n\nIn extreme situation, may need xattr bucket for setting\nsecurity entry and acl entries during mknod. This only\nhappens when block size is too small.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    },
    {
      "commit": "0e445b6fe93c723fe8093fd04ddfeb11ae2de082",
      "tree": "a7c2d8ccab64ef70477992b0121dd52966c66154",
      "parents": [
        "90cb546cada68bb8c2278afdb4b65c2ac11f2877"
      ],
      "author": {
        "name": "Tiger Yang",
        "email": "tiger.yang@oracle.com",
        "time": "Tue Dec 09 16:42:51 2008 +0800"
      },
      "committer": {
        "name": "Mark Fasheh",
        "email": "mfasheh@suse.com",
        "time": "Mon Jan 05 08:40:36 2009 -0800"
      },
      "message": "ocfs2: calculate and reserve credits for xattr value in mknod\n\nWe extend the credits for xattr\u0027s large value in set_value_outside\nbefore, this can give rise to a credits issue when we set one security\nentry and two acl entries duing mknod. As we remove extend_trans form\nset_value_outside, we must calculate and reserve the credits for\nxattr\u0027s large value in mknod.\n\nSigned-off-by: Tiger Yang \u003ctiger.yang@oracle.com\u003e\nSigned-off-by: Mark Fasheh \u003cmfasheh@suse.com\u003e\n"
    }
  ],
  "next": "90cb546cada68bb8c2278afdb4b65c2ac11f2877"
}
