{"push_id":2417052559,"size":41,"distinct_size":6,"ref":"refs/heads/rpi3","head":"a2a5c909c9a991298a23cb2b038e143e57cb8ece","before":"a1291dd9686734b9a480c6887ac4def088257ecd","commits":[{"sha":"0d3e45bc6507bd1f8728bf586ebd16c2d9e40613","author":{"name":"Dong Bo","email":"4656f59a7aeb732d6632746808decb86890e68fd@huawei.com"},"message":"libata: Fix compile warning with ATA_DEBUG enabled\n\nThis fixs the following comile warnings with ATA_DEBUG enabled,\nwhich detected by Linaro GCC 5.2-2015.11:\n\n  drivers/ata/libata-scsi.c: In function 'ata_scsi_dump_cdb':\n  ./include/linux/kern_levels.h:5:18: warning: format '%d' expects\n  argument of type 'int', but argument 6 has type 'u64 {aka long\n   long unsigned int}' [-Wformat=]\n\ntj: Patch hand-applied and description trimmed.\n\nSigned-off-by: Dong Bo <dongbo4@huawei.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/0d3e45bc6507bd1f8728bf586ebd16c2d9e40613"},{"sha":"3b61e5121d5c4d0ea79fe90ced8df2fe5cb67dc2","author":{"name":"Stefan Roese","email":"7fb8f6697ff728ccf6fd51d865ee13ec03d74a41@denx.de"},"message":"ahci: Add check for device presence (PCIe hot unplug) in ahci_stop_engine()\n\nExit directly with ENODEV, if the AHCI controller is not available\nanymore. Otherwise a delay of 500ms for each port is added to the remove\nfunction while trying to issue a command on the non-existent controller.\n\nSigned-off-by: Stefan Roese <sr@denx.de>\nCc: Tejun Heo <tj@kernel.org>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/3b61e5121d5c4d0ea79fe90ced8df2fe5cb67dc2"},{"sha":"9f2b51db5b551085e26c8af5fbe484d62b891ec9","author":{"name":"Baruch Siach","email":"59df7fddff988cc9cb1401c5f741eac8238ced89@tkos.co.il"},"message":"ata: libahci: fix comment indentation\n\nIndent the numbered item with one space like all other items in the same\nlist.\n\nSigned-off-by: Baruch Siach <baruch@tkos.co.il>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/9f2b51db5b551085e26c8af5fbe484d62b891ec9"},{"sha":"058f58e235cbe03e923b30ea7c49995a46a8725f","author":{"name":"Eric Biggers","email":"0106d512ed1cb672be29d4b167a07ead51709fba@google.com"},"message":"libata: fix length validation of ATAPI-relayed SCSI commands\n\nsyzkaller reported a crash in ata_bmdma_fill_sg() when writing to\n/dev/sg1.  The immediate cause was that the ATA command's scatterlist\nwas not DMA-mapped, which causes 'pi - 1' to underflow, resulting in a\nwrite to 'qc->ap->bmdma_prd[0xffffffff]'.\n\nStrangely though, the flag ATA_QCFLAG_DMAMAP was set in qc->flags.  The\nroot cause is that when __ata_scsi_queuecmd() is preparing to relay a\nSCSI command to an ATAPI device, it doesn't correctly validate the CDB\nlength before copying it into the 16-byte buffer 'cdb' in 'struct\nata_queued_cmd'.  Namely, it validates the fixed CDB length expected\nbased on the SCSI opcode but not the actual CDB length, which can be\nlarger due to the use of the SG_NEXT_CMD_LEN ioctl.  Since 'flags' is\nthe next member in ata_queued_cmd, a buffer overflow corrupts it.\n\nFix it by requiring that the actual CDB length be <= 16 (ATAPI_CDB_LEN).\n\n[Really it seems the length should be required to be <= dev->cdb_len,\nbut the current behavior seems to have been intentionally introduced by\ncommit 607126c2a21c (\"libata-scsi: be tolerant of 12-byte ATAPI commands\nin 16-byte CDBs\") to work around a userspace bug in mplayer.  Probably\nthe workaround is no longer needed (mplayer was fixed in 2007), but\ncontinuing to allow lengths to up 16 appears harmless for now.]\n\nHere's a reproducer that works in QEMU when /dev/sg1 refers to the\nCD-ROM drive that qemu-system-x86_64 creates by default:\n\n    #include <fcntl.h>\n    #include <sys/ioctl.h>\n    #include <unistd.h>\n\n    #define SG_NEXT_CMD_LEN 0x2283\n\n    int main()\n    {\n\t    char buf[53] = { [36] = 0x7e, [52] = 0x02 };\n\t    int fd = open(\"/dev/sg1\", O_RDWR);\n\t    ioctl(fd, SG_NEXT_CMD_LEN, &(int){ 17 });\n\t    write(fd, buf, sizeof(buf));\n    }\n\nThe crash was:\n\n    BUG: unable to handle kernel paging request at ffff8cb97db37ffc\n    IP: ata_bmdma_fill_sg drivers/ata/libata-sff.c:2623 [inline]\n    IP: ata_bmdma_qc_prep+0xa4/0xc0 drivers/ata/libata-sff.c:2727\n    PGD fb6c067 P4D fb6c067 PUD 0\n    Oops: 0002 [#1] SMP\n    CPU: 1 PID: 150 Comm: syz_ata_bmdma_q Not tainted 4.15.0-next-20180202 #99\n    Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.11.0-20171110_100015-anatol 04/01/2014\n    [...]\n    Call Trace:\n     ata_qc_issue+0x100/0x1d0 drivers/ata/libata-core.c:5421\n     ata_scsi_translate+0xc9/0x1a0 drivers/ata/libata-scsi.c:2024\n     __ata_scsi_queuecmd drivers/ata/libata-scsi.c:4326 [inline]\n     ata_scsi_queuecmd+0x8c/0x210 drivers/ata/libata-scsi.c:4375\n     scsi_dispatch_cmd+0xa2/0xe0 drivers/scsi/scsi_lib.c:1727\n     scsi_request_fn+0x24c/0x530 drivers/scsi/scsi_lib.c:1865\n     __blk_run_queue_uncond block/blk-core.c:412 [inline]\n     __blk_run_queue+0x3a/0x60 block/blk-core.c:432\n     blk_execute_rq_nowait+0x93/0xc0 block/blk-exec.c:78\n     sg_common_write.isra.7+0x272/0x5a0 drivers/scsi/sg.c:806\n     sg_write+0x1ef/0x340 drivers/scsi/sg.c:677\n     __vfs_write+0x31/0x160 fs/read_write.c:480\n     vfs_write+0xa7/0x160 fs/read_write.c:544\n     SYSC_write fs/read_write.c:589 [inline]\n     SyS_write+0x4d/0xc0 fs/read_write.c:581\n     do_syscall_64+0x5e/0x110 arch/x86/entry/common.c:287\n     entry_SYSCALL_64_after_hwframe+0x21/0x86\n\nFixes: 607126c2a21c (\"libata-scsi: be tolerant of 12-byte ATAPI commands in 16-byte CDBs\")\nReported-by: syzbot+1ff6f9fcc3c35f1c72a95e26528c8e7e3276e4da@syzkaller.appspotmail.com\nCc: <stable@vger.kernel.org> # v2.6.24+\nSigned-off-by: Eric Biggers <ebiggers@google.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/058f58e235cbe03e923b30ea7c49995a46a8725f"},{"sha":"9173e5e80729c8434b8d27531527c5245f4a5594","author":{"name":"Eric Biggers","email":"0106d512ed1cb672be29d4b167a07ead51709fba@google.com"},"message":"libata: remove WARN() for DMA or PIO command without data\n\nsyzkaller hit a WARN() in ata_qc_issue() when writing to /dev/sg0.  This\nhappened because it issued a READ_6 command with no data buffer.\n\nJust remove the WARN(), as it doesn't appear indicate a kernel bug.  The\nexpected behavior is to fail the command, which the code does.\n\nHere's a reproducer that works in QEMU when /dev/sg0 refers to a disk of\nthe default type (\"82371SB PIIX3 IDE\"):\n\n    #include <fcntl.h>\n    #include <unistd.h>\n\n    int main()\n    {\n            char buf[42] = { [36] = 0x8 /* READ_6 */ };\n\n            write(open(\"/dev/sg0\", O_RDWR), buf, sizeof(buf));\n    }\n\nFixes: f92a26365a72 (\"libata: change ATA_QCFLAG_DMAMAP semantics\")\nReported-by: syzbot+f7b556d1766502a69d85071d2ff08bd87be53d0f@syzkaller.appspotmail.com\nCc: <stable@vger.kernel.org> # v2.6.25+\nSigned-off-by: Eric Biggers <ebiggers@google.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/9173e5e80729c8434b8d27531527c5245f4a5594"},{"sha":"2c1ec6fda2d07044cda922ee25337cf5d4b429b3","author":{"name":"Eric Biggers","email":"0106d512ed1cb672be29d4b167a07ead51709fba@google.com"},"message":"libata: don't try to pass through NCQ commands to non-NCQ devices\n\nsyzkaller hit a WARN() in ata_bmdma_qc_issue() when writing to /dev/sg0.\nThis happened because it issued an ATA pass-through command (ATA_16)\nwhere the protocol field indicated that NCQ should be used -- but the\ndevice did not support NCQ.\n\nWe could just remove the WARN() from libata-sff.c, but the real problem\nseems to be that the SCSI -> ATA translation code passes through NCQ\ncommands without verifying that the device actually supports NCQ.\n\nFix this by adding the appropriate check to ata_scsi_pass_thru().\n\nHere's reproducer that works in QEMU when /dev/sg0 refers to a disk of\nthe default type (\"82371SB PIIX3 IDE\"):\n\n    #include <fcntl.h>\n    #include <unistd.h>\n\n    int main()\n    {\n            char buf[53] = { 0 };\n\n\t    buf[36] = 0x85;\t\t/* ATA_16 */\n\t    buf[37] = (12 << 1);\t/* FPDMA */\n\t    buf[38] = 0x1;\t\t/* Has data */\n\t    buf[51] = 0xC8;\t\t/* ATA_CMD_READ */\n            write(open(\"/dev/sg0\", O_RDWR), buf, sizeof(buf));\n    }\n\nFixes: ee7fb331c3ac (\"libata: add support for NCQ commands for SG interface\")\nReported-by: syzbot+2f69ca28df61bdfc77cd36af2e789850355a221e@syzkaller.appspotmail.com\nCc: <stable@vger.kernel.org> # v4.4+\nSigned-off-by: Eric Biggers <ebiggers@google.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/2c1ec6fda2d07044cda922ee25337cf5d4b429b3"},{"sha":"da77d76b95a0e8940793f4f7fe12a4a2d2048e39","author":{"name":"Khiem Nguyen","email":"2cad05a3dc77e2f0841ef7558485e2dfac065691@rvc.renesas.com"},"message":"sata_rcar: Reset SATA PHY when Salvator-X board resumes\n\nBecause power of Salvator-X board is cut off in suspend,\nit needs to reset SATA PHY state in resume.\nOtherwise, SATA partition could not be accessed anymore.\n\nSigned-off-by: Khiem Nguyen <khiem.nguyen.xt@rvc.renesas.com>\nSigned-off-by: Hien Dang <hien.dang.eb@rvc.renesas.com>\n[reinit phy in sata_rcar_resume() function on R-Car Gen3 only]\n[factor out SATA module init sequence]\n[fixed the prefix for the subject]\nSigned-off-by: Yoshihiro Kaneko <ykaneko0929@gmail.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/da77d76b95a0e8940793f4f7fe12a4a2d2048e39"},{"sha":"c53593e5cb693d59d9e8b64fb3a79436bf99c3b3","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"sched, cgroup: Don't reject lower cpu.max on ancestors\n\nWhile adding cgroup2 interface for the cpu controller, 0d5936344f30\n(\"sched: Implement interface for cgroup unified hierarchy\") forgot to\nupdate input validation and left it to reject cpu.max config if any\ndescendant has set a higher value.\n\ncgroup2 officially supports delegation and a descendant must not be\nable to restrict what its ancestors can configure.  For absolute\nlimits such as cpu.max and memory.max, this means that the config at\neach level should only act as the upper limit at that level and\nshouldn't interfere with what other cgroups can configure.\n\nThis patch updates config validation on cgroup2 so that the cpu\ncontroller follows the same convention.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nFixes: 0d5936344f30 (\"sched: Implement interface for cgroup unified hierarchy\")\nAcked-by: Peter Zijlstra (Intel) <peterz@infradead.org>\nCc: stable@vger.kernel.org # v4.15+","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/c53593e5cb693d59d9e8b64fb3a79436bf99c3b3"},{"sha":"685469e5bf9d31ccd9212be86f861a18fc213d05","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"percpu: add Dennis Zhou as a percpu co-maintainer\n\nDennis rewrote the percpu area allocator some months ago, understands\nmost of the code base and has been responsive with the bug reports and\nquestions.  Let's add him as a co-maintainer.\n\nSigned-off-by: Tejun Heo <tj@kernel.org>\nAcked-by: Christopher Lameter <cl@linux.com>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/685469e5bf9d31ccd9212be86f861a18fc213d05"},{"sha":"b1c7fe26e0497386d3ae2e2404d1fa7f93895405","author":{"name":"Aishwarya Pant","email":"9b3b7595f22c6835534cb1d027fcc0a3af0393b0@gmail.com"},"message":"libata: transport: cleanup documentation of sysfs interface\n\nClean-up the documentation of sysfs interfaces to be in the same format\nas described in Documentation/ABI/README. This will be useful for\ntracking changes in the ABI. Attributes are grouped by function (device,\nlink or port) and then by date added.\n\nThis patch also adds documentation for one attribute -\n/sys/class/ata_port/ataX/port_no\n\nSigned-off-by: Aishwarya Pant <aishpant@gmail.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/b1c7fe26e0497386d3ae2e2404d1fa7f93895405"},{"sha":"8f8ca51dbb4da0457f57f83d94aea81931b0707a","author":{"name":"Geert Uytterhoeven","email":"91a5f0ac06d51a651e45b62a5b36e28880b80bc4@glider.be"},"message":"ata: sata_rcar: Remove unused variable in sata_rcar_init_controller()\n\ndrivers/ata/sata_rcar.c: In function 'sata_rcar_init_controller':\ndrivers/ata/sata_rcar.c:821:8: warning: unused variable 'base' [-Wunused-variable]\n\nFixes: da77d76b95a0e894 (\"sata_rcar: Reset SATA PHY when Salvator-X board resumes\")\nSigned-off-by: Geert Uytterhoeven <geert+renesas@glider.be>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/8f8ca51dbb4da0457f57f83d94aea81931b0707a"},{"sha":"0a65e125150c227314dcd561a202a84228398449","author":{"name":"Aishwarya Pant","email":"9b3b7595f22c6835534cb1d027fcc0a3af0393b0@gmail.com"},"message":"libata: update documentation for sysfs interfaces\n\nDcoumentation has been added by parsing through git commit history and\nreading code. This might be useful for scripting and tracking changes in\nthe ABI.\n\nI do not have complete descriptions for the following 3 attributes; they\nhave been annotated with the comment [to be documented] -\n\n\t/sys/class/scsi_host/hostX/ahci_port_cmd\n\t/sys/class/scsi_host/hostX/ahci_host_caps\n\t/sys/class/scsi_host/hostX/ahci_host_cap2\n\nSigned-off-by: Aishwarya Pant <aishpant@gmail.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/0a65e125150c227314dcd561a202a84228398449"},{"sha":"9c7be59fc519af9081c46c48f06f2b8fadf55ad8","author":{"name":"Hans de Goede","email":"a4b43a7169288183ae7c1f5a0140023a97961f48@redhat.com"},"message":"libata: Apply NOLPM quirk to Crucial MX100 512GB SSDs\n\nVarious people have reported the Crucial MX100 512GB model not working\nwith LPM set to min_power. I've now received a report that it also does\nnot work with the new med_power_with_dipm level.\n\nIt does work with medium_power, but that has no measurable power-savings\nand given the amount of people being bitten by the other levels not\nworking, this commit just disables LPM altogether.\n\nNote all reporters of this have either the 512GB model (max capacity), or\nare not specifying their SSD's size. So for now this quirk assumes this is\na problem with the 512GB model only.\n\nBuglink: https://bugzilla.kernel.org/show_bug.cgi?id=89261\nBuglink: https://github.com/linrunner/TLP/issues/84\nCc: stable@vger.kernel.org\nSigned-off-by: Hans de Goede <hdegoede@redhat.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/9c7be59fc519af9081c46c48f06f2b8fadf55ad8"},{"sha":"15d9f3d116c02a485441d758d9ca0a2e4f3b30be","author":{"name":"Dennis Zhou","email":"e0482cbb1ec050fb5fe5ee8ce18af34d3c1c38a6@gmail.com"},"message":"percpu: match chunk allocator declarations with definitions\n\nAt some point the function declaration parameters got out of sync with\nthe function definitions in percpu-vm.c and percpu-km.c. This patch\nmakes them match again.\n\nSigned-off-by: Dennis Zhou <dennisszhou@gmail.com>\nAcked-by: Christoph Lameter <cl@linux.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/15d9f3d116c02a485441d758d9ca0a2e4f3b30be"},{"sha":"47504ee04b9241548ae2c28be7d0b01cff3b7aa6","author":{"name":"Dennis Zhou","email":"e0482cbb1ec050fb5fe5ee8ce18af34d3c1c38a6@gmail.com"},"message":"percpu: add __GFP_NORETRY semantics to the percpu balancing path\n\nPercpu memory using the vmalloc area based chunk allocator lazily\npopulates chunks by first requesting the full virtual address space\nrequired for the chunk and subsequently adding pages as allocations come\nthrough. To ensure atomic allocations can succeed, a workqueue item is\nused to maintain a minimum number of empty pages. In certain scenarios,\nsuch as reported in [1], it is possible that physical memory becomes\nquite scarce which can result in either a rather long time spent trying\nto find free pages or worse, a kernel panic.\n\nThis patch adds support for __GFP_NORETRY and __GFP_NOWARN passing them\nthrough to the underlying allocators. This should prevent any\nunnecessary panics potentially caused by the workqueue item. The passing\nof gfp around is as additional flags rather than a full set of flags.\nThe next patch will change these to caller passed semantics.\n\nV2:\nAdded const modifier to gfp flags in the balance path.\nRemoved an extra whitespace.\n\n[1] https://lkml.org/lkml/2018/2/12/551\n\nSigned-off-by: Dennis Zhou <dennisszhou@gmail.com>\nSuggested-by: Daniel Borkmann <daniel@iogearbox.net>\nReported-by: syzbot+adb03f3f0bb57ce3acda@syzkaller.appspotmail.com\nAcked-by: Christoph Lameter <cl@linux.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/47504ee04b9241548ae2c28be7d0b01cff3b7aa6"},{"sha":"554fef1c39ee148623a496e04569dabb11463406","author":{"name":"Dennis Zhou","email":"e0482cbb1ec050fb5fe5ee8ce18af34d3c1c38a6@gmail.com"},"message":"percpu: allow select gfp to be passed to underlying allocators\n\nThe prior patch added support for passing gfp flags through to the\nunderlying allocators. This patch allows users to pass along gfp flags\n(currently only __GFP_NORETRY and __GFP_NOWARN) to the underlying\nallocators. This should allow users to decide if they are ok with\nfailing allocations recovering in a more graceful way.\n\nAdditionally, gfp passing was done as additional flags in the previous\npatch. Instead, change this to caller passed semantics. GFP_KERNEL is\nalso removed as the default flag. It continues to be used for internally\ncaused underlying percpu allocations.\n\nV2:\nRemoved gfp_percpu_mask in favor of doing it inline.\nRemoved GFP_KERNEL as a default flag for __alloc_percpu_gfp.\n\nSigned-off-by: Dennis Zhou <dennisszhou@gmail.com>\nSuggested-by: Daniel Borkmann <daniel@iogearbox.net>\nAcked-by: Christoph Lameter <cl@linux.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/554fef1c39ee148623a496e04569dabb11463406"},{"sha":"b17e5729a630d8326a48ec34ef02e6b4464a6aef","author":{"name":"Kai-Heng Feng","email":"49d050d7a2ceecc3a608b6160348d55167459976@canonical.com"},"message":"libata: disable LPM for Crucial BX100 SSD 500GB drive\n\nAfter Laptop Mode Tools starts to use min_power for LPM, a user found\nout Crucial BX100 SSD can't get mounted.\n\nCrucial BX100 SSD 500GB drive don't work well with min_power. This also\nhappens to med_power_with_dipm.\n\nSo let's disable LPM for Crucial BX100 SSD 500GB drive.\n\nBugLink: https://bugs.launchpad.net/bugs/1726930\nSigned-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>\nCc: stable@vger.kernel.org","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/b17e5729a630d8326a48ec34ef02e6b4464a6aef"},{"sha":"d1897c9538edafd4ae6bbd03cc075962ddde2c21","author":{"name":"Tejun Heo","email":"e1d87360d7f4d7b7ebaddc11b54e50a559aaba57@kernel.org"},"message":"cgroup: fix rule checking for threaded mode switching\n\nA domain cgroup isn't allowed to be turned threaded if its subtree is\npopulated or domain controllers are enabled.  cgroup_enable_threaded()\ndepended on cgroup_can_be_thread_root() test to enforce this rule.  A\nparent which has populated domain descendants or have domain\ncontrollers enabled can't become a thread root, so the above rules are\nenforced automatically.\n\nHowever, for the root cgroup which can host mixed domain and threaded\nchildren, cgroup_can_be_thread_root() doesn't check any of those\nconditions and thus first level cgroups ends up escaping those rules.\n\nThis patch fixes the bug by adding explicit checks for those rules in\ncgroup_enable_threaded().\n\nReported-by: Michael Kerrisk (man-pages) <mtk.manpages@gmail.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>\nFixes: 8cfd8147df67 (\"cgroup: implement cgroup v2 thread support\")\nCc: stable@vger.kernel.org # v4.14+","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/d1897c9538edafd4ae6bbd03cc075962ddde2c21"},{"sha":"accd4f36a7d11c2d54544007eb65e10604dcf2f5","author":{"name":"Eric Dumazet","email":"b3d77ad2db30f558882cc0c038be5a3cf96611f9@google.com"},"message":"percpu: add a schedule point in pcpu_balance_workfn()\n\nWhen a large BPF percpu map is destroyed, I have seen\npcpu_balance_workfn() holding cpu for hundreds of milliseconds.\n\nOn KASAN config and 112 hyperthreads, average time to destroy a chunk\nis ~4 ms.\n\n[ 2489.841376] destroy chunk 1 in 4148689 ns\n...\n[ 2490.093428] destroy chunk 32 in 4072718 ns\n\nSigned-off-by: Eric Dumazet <edumazet@google.com>\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/accd4f36a7d11c2d54544007eb65e10604dcf2f5"},{"sha":"6f54120e17e311fd7ac42b9ec2a0611caa5b46ad","author":{"name":"Jason Yan","email":"2556f8d79a793dc42313f057c04e327042ff0c01@huawei.com"},"message":"ata: do not schedule hot plug if it is a sas host\n\nWe've got a kernel panic when using sata disk with sas controller:\n\n[115946.152283] Unable to handle kernel NULL pointer dereference at virtual address 000007d8\n[115946.223963] CPU: 0 PID: 22175 Comm: kworker/0:1 Tainted: G   W OEL  4.14.0 #1\n[115946.232925] Workqueue: events ata_scsi_hotplug\n[115946.237938] task: ffff8021ee50b180 task.stack: ffff00000d5d0000\n[115946.244717] PC is at sas_find_dev_by_rphy+0x44/0x114\n[115946.250224] LR is at sas_find_dev_by_rphy+0x3c/0x114\n......\n[115946.355701] Process kworker/0:1 (pid: 22175, stack limit = 0xffff00000d5d0000)\n[115946.363369] Call trace:\n[115946.456356] [<ffff000008878a9c>] sas_find_dev_by_rphy+0x44/0x114\n[115946.462908] [<ffff000008878b8c>] sas_target_alloc+0x20/0x5c\n[115946.469408] [<ffff00000885a31c>] scsi_alloc_target+0x250/0x308\n[115946.475781] [<ffff00000885ba30>] __scsi_add_device+0xb0/0x154\n[115946.481991] [<ffff0000088b520c>] ata_scsi_scan_host+0x180/0x218\n[115946.488367] [<ffff0000088b53d8>] ata_scsi_hotplug+0xb0/0xcc\n[115946.494801] [<ffff0000080ebd70>] process_one_work+0x144/0x390\n[115946.501115] [<ffff0000080ec100>] worker_thread+0x144/0x418\n[115946.507093] [<ffff0000080f2c98>] kthread+0x10c/0x138\n[115946.512792] [<ffff0000080855dc>] ret_from_fork+0x10/0x18\n\nWe found that Ding Xiang has reported a similar bug before:\nhttps://patchwork.kernel.org/patch/9179817/\n\nAnd this bug still exists in mainline. Since libsas handles hotplug and\ndevice adding/removing itself, do not need to schedule ata hot plug task\nhere if it is a sas host.\n\nSigned-off-by: Jason Yan <yanaijie@huawei.com>\nCc: Ding Xiang <dingxiang@huawei.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Tejun Heo <tj@kernel.org>","distinct":false,"url":"https://api.github.com/repos/malaterre/linux/commits/6f54120e17e311fd7ac42b9ec2a0611caa5b46ad"}]}
{"actor":{"display_login":"malaterre"}}