lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20151207152709.5153e98f@canb.auug.org.au>
Date:	Mon, 7 Dec 2015 15:27:09 +1100
From:	Stephen Rothwell <sfr@...b.auug.org.au>
To:	Jens Axboe <axboe@...nel.dk>
Cc:	linux-next@...r.kernel.org, linux-kernel@...r.kernel.org,
	Stephan Günther <guenther@....de>,
	Christoph Hellwig <hch@....de>
Subject: linux-next: manual merge of the block tree with Linus' tree

Hi Jens,

Today's linux-next merge of the block tree got a conflict in:

  drivers/nvme/host/pci.c

between commit:

  1f390c1fde3a ("nvme: temporary fix for Apple controller reset")

from Linus' tree and commit:

  7a67cbea653e ("nvme: use offset instead of a struct for registers")

from the block tree.

I fixed it up (see below) and can carry the fix as necessary (no action
is required).

-- 
Cheers,
Stephen Rothwell                    sfr@...b.auug.org.au

diff --cc drivers/nvme/host/pci.c
index 9e294ff4e652,a64d0baacc58..000000000000
--- a/drivers/nvme/host/pci.c
+++ b/drivers/nvme/host/pci.c
@@@ -2704,23 -1805,12 +1805,24 @@@ static int nvme_dev_map(struct nvme_de
  			goto unmap;
  	}
  
- 	cap = lo_hi_readq(&dev->bar->cap);
+ 	cap = lo_hi_readq(dev->bar + NVME_REG_CAP);
+ 
  	dev->q_depth = min_t(int, NVME_CAP_MQES(cap) + 1, NVME_Q_DEPTH);
  	dev->db_stride = 1 << NVME_CAP_STRIDE(cap);
- 	dev->dbs = ((void __iomem *)dev->bar) + 4096;
+ 	dev->dbs = dev->bar + 4096;
 +
 +	/*
 +	 * Temporary fix for the Apple controller found in the MacBook8,1 and
 +	 * some MacBook7,1 to avoid controller resets and data loss.
 +	 */
 +	if (pdev->vendor == PCI_VENDOR_ID_APPLE && pdev->device == 0x2001) {
 +		dev->q_depth = 2;
 +		dev_warn(dev->dev, "detected Apple NVMe controller, set "
 +			"queue depth=%u to work around controller resets\n",
 +			dev->q_depth);
 +	}
 +
- 	if (readl(&dev->bar->vs) >= NVME_VS(1, 2))
+ 	if (readl(dev->bar + NVME_REG_VS) >= NVME_VS(1, 2))
  		dev->cmb = nvme_map_cmb(dev);
  
  	return 0;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ