From: Al Viro <viro@ZenIV.linux.org.uk>
To: linux-kernel@vger.kernel.org
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Subject: [POC][PATCH 30/83] sparc: get rid of pointless casts
Date: Mon, 21 Dec 2015 23:47:03 +0000 [thread overview]
Message-ID: <1450741676-5865-30-git-send-email-viro@ZenIV.linux.org.uk> (raw)
In-Reply-To: <20151221234615.GW20997@ZenIV.linux.org.uk>
From: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
---
arch/sparc/include/asm/dma.h | 2 +-
arch/sparc/include/asm/iommu_64.h | 2 +-
arch/sparc/kernel/iommu.c | 8 ++++----
arch/sparc/kernel/ioport.c | 8 ++++----
arch/sparc/kernel/irq_64.c | 4 ++--
arch/sparc/kernel/pci_fire.c | 18 ++++++++----------
arch/sparc/kernel/pci_sun4v.c | 24 +++++++++++++-----------
arch/sparc/mm/io-unit.c | 9 ++++-----
arch/sparc/mm/iommu.c | 10 +++++-----
9 files changed, 42 insertions(+), 43 deletions(-)
diff --git a/arch/sparc/include/asm/dma.h b/arch/sparc/include/asm/dma.h
index 3d434ef..9bf9f53 100644
--- a/arch/sparc/include/asm/dma.h
+++ b/arch/sparc/include/asm/dma.h
@@ -101,7 +101,7 @@ struct sparc32_dma_ops {
void (*release_scsi_one)(struct device *, __u32, unsigned long);
void (*release_scsi_sgl)(struct device *, struct scatterlist *,int);
#ifdef CONFIG_SBUS
- int (*map_dma_area)(struct device *, dma_addr_t *, unsigned long, unsigned long, int);
+ int (*map_dma_area)(struct device *, dma_addr_t *, void *, unsigned long, int);
void (*unmap_dma_area)(struct device *, unsigned long, int);
#endif
};
diff --git a/arch/sparc/include/asm/iommu_64.h b/arch/sparc/include/asm/iommu_64.h
index cd0d69f..e781f29 100644
--- a/arch/sparc/include/asm/iommu_64.h
+++ b/arch/sparc/include/asm/iommu_64.h
@@ -36,7 +36,7 @@ struct iommu {
unsigned long iommu_tags;
unsigned long iommu_ctxflush;
unsigned long write_complete_reg;
- unsigned long dummy_page;
+ void *dummy_page;
unsigned long dummy_page_pa;
unsigned long ctx_lowest_free;
DECLARE_BITMAP(ctx_bitmap, IOMMU_NUM_CTXS);
diff --git a/arch/sparc/kernel/iommu.c b/arch/sparc/kernel/iommu.c
index 18a40c6..47c2822 100644
--- a/arch/sparc/kernel/iommu.c
+++ b/arch/sparc/kernel/iommu.c
@@ -124,8 +124,8 @@ int iommu_table_init(struct iommu *iommu, int tsbsize,
printk(KERN_ERR "IOMMU: Error, gfp(dummy_page) failed.\n");
goto out_free_map;
}
- iommu->dummy_page = (unsigned long) page_address(page);
- memset((void *)iommu->dummy_page, 0, PAGE_SIZE);
+ iommu->dummy_page = page_address(page);
+ memset(iommu->dummy_page, 0, PAGE_SIZE);
iommu->dummy_page_pa = (unsigned long) __pa(iommu->dummy_page);
/* Now allocate and setup the IOMMU page table itself. */
@@ -143,8 +143,8 @@ int iommu_table_init(struct iommu *iommu, int tsbsize,
return 0;
out_free_dummy_page:
- free_page((void *)iommu->dummy_page);
- iommu->dummy_page = 0UL;
+ free_page(iommu->dummy_page);
+ iommu->dummy_page = NULL;
out_free_map:
kfree(iommu->tbl.map);
diff --git a/arch/sparc/kernel/ioport.c b/arch/sparc/kernel/ioport.c
index 39b406a..3bd3481 100644
--- a/arch/sparc/kernel/ioport.c
+++ b/arch/sparc/kernel/ioport.c
@@ -264,7 +264,7 @@ static void *sbus_alloc_coherent(struct device *dev, size_t len,
{
struct platform_device *op = to_platform_device(dev);
unsigned long len_total = PAGE_ALIGN(len);
- unsigned long va;
+ void *va;
struct resource *res;
int order;
@@ -278,8 +278,8 @@ static void *sbus_alloc_coherent(struct device *dev, size_t len,
}
order = get_order(len_total);
- va = __get_free_pages(gfp, order);
- if (va == 0)
+ va = (void *)__get_free_pages(gfp, order);
+ if (!va)
goto err_nopages;
if ((res = kzalloc(sizeof(struct resource), GFP_KERNEL)) == NULL)
@@ -309,7 +309,7 @@ err_noiommu:
err_nova:
kfree(res);
err_nomem:
- free_pages((void *)va, order);
+ free_pages(va, order);
err_nopages:
return NULL;
}
diff --git a/arch/sparc/kernel/irq_64.c b/arch/sparc/kernel/irq_64.c
index 24847b2..e2d198d 100644
--- a/arch/sparc/kernel/irq_64.c
+++ b/arch/sparc/kernel/irq_64.c
@@ -1033,11 +1033,11 @@ static void __init alloc_one_queue(unsigned long *pa_ptr, unsigned long qmask)
static void __init init_cpu_send_mondo_info(struct trap_per_cpu *tb)
{
#ifdef CONFIG_SMP
- unsigned long page;
+ void *page;
BUILD_BUG_ON((NR_CPUS * sizeof(u16)) > (PAGE_SIZE - 64));
- page = (unsigned long)get_zeroed_page(GFP_KERNEL);
+ page = get_zeroed_page(GFP_KERNEL);
if (!page) {
prom_printf("SUN4V: Error, cannot allocate cpu mondo page.\n");
prom_halt();
diff --git a/arch/sparc/kernel/pci_fire.c b/arch/sparc/kernel/pci_fire.c
index b8ac1bb..ff44386 100644
--- a/arch/sparc/kernel/pci_fire.c
+++ b/arch/sparc/kernel/pci_fire.c
@@ -228,17 +228,18 @@ static int pci_fire_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi)
static int pci_fire_msiq_alloc(struct pci_pbm_info *pbm)
{
- unsigned long pages, order, i;
+ unsigned long order, i;
+ void *pages;
order = get_order(512 * 1024);
- pages = __get_free_pages(GFP_KERNEL | __GFP_COMP, order);
- if (pages == 0UL) {
+ pages = (void *)__get_free_pages(GFP_KERNEL | __GFP_COMP, order);
+ if (!pages) {
printk(KERN_ERR "MSI: Cannot allocate MSI queues (o=%lu).\n",
order);
return -ENOMEM;
}
- memset((char *)pages, 0, PAGE_SIZE << order);
- pbm->msi_queues = (void *) pages;
+ memset(pages, 0, PAGE_SIZE << order);
+ pbm->msi_queues = pages;
upa_writeq((EVENT_QUEUE_BASE_ADDR_ALL_ONES |
__pa(pbm->msi_queues)),
@@ -260,12 +261,9 @@ static int pci_fire_msiq_alloc(struct pci_pbm_info *pbm)
static void pci_fire_msiq_free(struct pci_pbm_info *pbm)
{
- unsigned long pages, order;
+ void *pages = pbm->msi_queues;
- order = get_order(512 * 1024);
- pages = (unsigned long) pbm->msi_queues;
-
- free_pages((void *)pages, order);
+ free_pages(pages, get_order(512 * 1024));
pbm->msi_queues = NULL;
}
diff --git a/arch/sparc/kernel/pci_sun4v.c b/arch/sparc/kernel/pci_sun4v.c
index 3ea1937..9d84e4e 100644
--- a/arch/sparc/kernel/pci_sun4v.c
+++ b/arch/sparc/kernel/pci_sun4v.c
@@ -746,20 +746,21 @@ static int pci_sun4v_msi_teardown(struct pci_pbm_info *pbm, unsigned long msi)
static int pci_sun4v_msiq_alloc(struct pci_pbm_info *pbm)
{
- unsigned long q_size, alloc_size, pages, order;
+ unsigned long q_size, alloc_size, order;
+ void *pages;
int i;
q_size = pbm->msiq_ent_count * sizeof(struct pci_sun4v_msiq_entry);
alloc_size = (pbm->msiq_num * q_size);
order = get_order(alloc_size);
- pages = __get_free_pages(GFP_KERNEL | __GFP_COMP, order);
- if (pages == 0UL) {
+ pages = (void *)__get_free_pages(GFP_KERNEL | __GFP_COMP, order);
+ if (!pages) {
printk(KERN_ERR "MSI: Cannot allocate MSI queues (o=%lu).\n",
order);
return -ENOMEM;
}
- memset((char *)pages, 0, PAGE_SIZE << order);
- pbm->msi_queues = (void *) pages;
+ memset(pages, 0, PAGE_SIZE << order);
+ pbm->msi_queues = pages;
for (i = 0; i < pbm->msiq_num; i++) {
unsigned long err, base = __pa(pages + (i * q_size));
@@ -794,13 +795,14 @@ static int pci_sun4v_msiq_alloc(struct pci_pbm_info *pbm)
return 0;
h_error:
- free_pages((void *)pages, order);
+ free_pages(pages, order);
return -EINVAL;
}
static void pci_sun4v_msiq_free(struct pci_pbm_info *pbm)
{
- unsigned long q_size, alloc_size, pages, order;
+ unsigned long q_size, alloc_size, order;
+ void *pages;
int i;
for (i = 0; i < pbm->msiq_num; i++) {
@@ -813,9 +815,9 @@ static void pci_sun4v_msiq_free(struct pci_pbm_info *pbm)
alloc_size = (pbm->msiq_num * q_size);
order = get_order(alloc_size);
- pages = (unsigned long) pbm->msi_queues;
+ pages = pbm->msi_queues;
- free_pages((void *)pages, order);
+ free_pages(pages, order);
pbm->msi_queues = NULL;
}
@@ -937,12 +939,12 @@ static int pci_sun4v_probe(struct platform_device *op)
err = -ENOMEM;
if (!iommu_batch_initialized) {
for_each_possible_cpu(i) {
- unsigned long page = (unsigned long)get_zeroed_page(GFP_KERNEL);
+ u64 *page = get_zeroed_page(GFP_KERNEL);
if (!page)
goto out_err;
- per_cpu(iommu_batch, i).pglist = (u64 *) page;
+ per_cpu(iommu_batch, i).pglist = page;
}
iommu_batch_initialized = 1;
}
diff --git a/arch/sparc/mm/io-unit.c b/arch/sparc/mm/io-unit.c
index f311bf2..707d5a0 100644
--- a/arch/sparc/mm/io-unit.c
+++ b/arch/sparc/mm/io-unit.c
@@ -200,10 +200,10 @@ static void iounit_release_scsi_sgl(struct device *dev, struct scatterlist *sg,
}
#ifdef CONFIG_SBUS
-static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long va, unsigned long addr, int len)
+static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, void *va, unsigned long addr, int len)
{
struct iounit_struct *iounit = dev->archdata.iommu;
- unsigned long page, end;
+ unsigned long end;
pgprot_t dvma_prot;
iopte_t __iomem *iopte;
@@ -212,7 +212,6 @@ static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned lon
dvma_prot = __pgprot(SRMMU_CACHE | SRMMU_ET_PTE | SRMMU_PRIV);
end = PAGE_ALIGN((addr + len));
while(addr < end) {
- page = va;
{
pgd_t *pgdp;
pmd_t *pmdp;
@@ -223,12 +222,12 @@ static int iounit_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned lon
pmdp = pmd_offset(pgdp, addr);
ptep = pte_offset_map(pmdp, addr);
- set_pte(ptep, mk_pte(virt_to_page(page), dvma_prot));
+ set_pte(ptep, mk_pte(virt_to_page(va), dvma_prot));
i = ((addr - IOUNIT_DMA_BASE) >> PAGE_SHIFT);
iopte = iounit->page_table + i;
- sbus_writel(MKIOPTE(__pa(page)), iopte);
+ sbus_writel(MKIOPTE(__pa(va)), iopte);
}
addr += PAGE_SIZE;
va += PAGE_SIZE;
diff --git a/arch/sparc/mm/iommu.c b/arch/sparc/mm/iommu.c
index 491511d..f9d30bd 100644
--- a/arch/sparc/mm/iommu.c
+++ b/arch/sparc/mm/iommu.c
@@ -321,7 +321,7 @@ static void iommu_release_scsi_sgl(struct device *dev, struct scatterlist *sg, i
}
#ifdef CONFIG_SBUS
-static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long va,
+static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, void *va,
unsigned long addr, int len)
{
struct iommu_struct *iommu = dev->archdata.iommu;
@@ -330,7 +330,7 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long
iopte_t *first;
int ioptex;
- BUG_ON((va & ~PAGE_MASK) != 0);
+ BUG_ON(((unsigned long)va & ~PAGE_MASK) != 0);
BUG_ON((addr & ~PAGE_MASK) != 0);
BUG_ON((len & ~PAGE_MASK) != 0);
@@ -344,7 +344,7 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long
first = iopte;
end = addr + len;
while(addr < end) {
- page = va;
+ page = (unsigned long)va;
{
pgd_t *pgdp;
pmd_t *pmdp;
@@ -361,10 +361,10 @@ static int iommu_map_dma_area(struct device *dev, dma_addr_t *pba, unsigned long
pmdp = pmd_offset(pgdp, addr);
ptep = pte_offset_map(pmdp, addr);
- set_pte(ptep, mk_pte(virt_to_page(page), dvma_prot));
+ set_pte(ptep, mk_pte(virt_to_page(va), dvma_prot));
}
iopte_val(*iopte++) =
- MKIOPTE(page_to_pfn(virt_to_page(page)), ioperm_noc);
+ MKIOPTE(page_to_pfn(virt_to_page(va)), ioperm_noc);
addr += PAGE_SIZE;
va += PAGE_SIZE;
}
--
2.1.4
next prev parent reply other threads:[~2015-12-22 0:04 UTC|newest]
Thread overview: 94+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-12-21 23:46 [RFC] free_pages stuff Al Viro
2015-12-21 23:46 ` [POC][PATCH 01/83] switch free_page() from unsigned long to const void * Al Viro
2015-12-21 23:46 ` [POC][PATCH 02/83] switch free_pages() " Al Viro
2015-12-21 23:46 ` [POC][PATCH 03/83] switch get_zeroed_page() to returning " Al Viro
2015-12-21 23:46 ` [POC][PATCH 04/83] kill unused {get,free}_user_page() Al Viro
2015-12-21 23:46 ` [POC][PATCH 05/83] switch copy_mount_options to storing void * instead of unsigned long Al Viro
2015-12-21 23:46 ` [POC][PATCH 06/83] drivers/net/wireless/libertas/debugfs.c: get rid of pointless casts Al Viro
2015-12-21 23:46 ` [POC][PATCH 07/83] drivers/net/wireless/mwifiex/debugfs.c: " Al Viro
2015-12-21 23:46 ` [POC][PATCH 08/83] affs_evict_inode(): " Al Viro
2015-12-21 23:46 ` [POC][PATCH 09/83] configfs_follow_link(): " Al Viro
2015-12-21 23:46 ` [POC][PATCH 10/83] kernfs_iop_follow_link(): " Al Viro
2015-12-21 23:46 ` [POC][PATCH 11/83] sound/oss/vidc: keep dma_buf[] as pointers Al Viro
2015-12-21 23:46 ` [POC][PATCH 12/83] drivers/tty: get rid of pointless casts Al Viro
2015-12-21 23:46 ` [POC][PATCH 13/83] rds: keep pointers in ->m_page_addrs[] Al Viro
2015-12-21 23:46 ` [POC][PATCH 14/83] proc_dev_atm_read(): get rid of pointless casts Al Viro
2015-12-21 23:46 ` [POC][PATCH 15/83] qib get_map_page(): " Al Viro
2015-12-21 23:46 ` [POC][PATCH 16/83] user_namespace: " Al Viro
2015-12-21 23:46 ` [POC][PATCH 17/83] ftrace: " Al Viro
2015-12-21 23:46 ` [POC][PATCH 18/83] sysctl: " Al Viro
2015-12-21 23:46 ` [POC][PATCH 19/83] xenstored_local_init(): " Al Viro
2015-12-21 23:46 ` [POC][PATCH 20/83] staging/rdma: " Al Viro
2015-12-21 23:46 ` [POC][PATCH 21/83] c6x: remove unused macros Al Viro
2015-12-21 23:46 ` [POC][PATCH 22/83] [davinci] ccdc_update_raw_params() frees the wrong thing Al Viro
2015-12-21 23:46 ` [POC][PATCH 23/83] fd_dma_mem_free(): pass address as void * instead of unsigned long Al Viro
2015-12-21 23:46 ` [POC][PATCH 24/83] ppc: keep ->hpt_virt as a pointer Al Viro
2015-12-21 23:46 ` [POC][PATCH 25/83] dma_4u_alloc_coherent(): don't mix virtual and physical addresses Al Viro
2015-12-21 23:46 ` [POC][PATCH 26/83] dma_4v_alloc_coherent(): " Al Viro
2015-12-21 23:47 ` [POC][PATCH 27/83] new helper: get_dma_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 28/83] make fd_dma_mem_alloc/nodma_mem_alloc return a pointer Al Viro
2015-12-21 23:47 ` [POC][PATCH 29/83] switch the remaining users of __get_dma_pages() to get_dma_pages() Al Viro
2015-12-21 23:47 ` Al Viro [this message]
2015-12-21 23:47 ` [POC][PATCH 31/83] efficeon: get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 32/83] lguest: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 33/83] drivers/pci: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 34/83] drivers/s390: ger " Al Viro
2015-12-21 23:47 ` [POC][PATCH 35/83] s390 kvm: get " Al Viro
2015-12-21 23:47 ` [POC][PATCH 36/83] pcibios: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 37/83] ste_dma40: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 38/83] usb_mon: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 39/83] gnttab_end_foreign_access(): switch the last argument to void * Al Viro
2015-12-21 23:47 ` [POC][PATCH 40/83] nios2: dma_free_coherent(): get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 41/83] hsi: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 42/83] simserial: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 43/83] arm64 vdso: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 44/83] cris free_init_page(): switch to __free_page() Al Viro
2015-12-21 23:47 ` [POC][PATCH 45/83] arm: switch kvm_arm_hyp_stack_page to void * Al Viro
2015-12-21 23:47 ` [POC][PATCH 46/83] frv consistent_alloc(): switch page " Al Viro
2015-12-21 23:47 ` [POC][PATCH 47/83] ia64: uncached_add_chunk(): switch to __free_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 48/83] jfs_readdir(): make dirent_buf a pointer Al Viro
2015-12-21 23:47 ` [POC][PATCH 49/83] get rid of casts in alloc_exact stuff Al Viro
2015-12-21 23:47 ` [POC][PATCH 50/83] s390 cmm: get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 51/83] microblaze consistent_alloc(): " Al Viro
2015-12-21 23:47 ` [POC][PATCH 52/83] devm_{get_}free_pages(): switch to pointers Al Viro
2015-12-21 23:47 ` [POC][PATCH 53/83] cavium: (partially) get rid of cargo-culting in allocator Al Viro
2015-12-21 23:47 ` [POC][PATCH 54/83] um: store stacks as pointers Al Viro
2015-12-21 23:47 ` [POC][PATCH 55/83] sh: get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 56/83] amd_gart_64: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 57/83] iwlegacy: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 58/83] iwlwifi: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 59/83] add pointer-returning variants of __get_free_pages/__get_free_page Al Viro
2015-12-21 23:47 ` [POC][PATCH 60/83] switch obvious cases to get_free_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 61/83] switch obvious cases to get_free_page() Al Viro
2015-12-21 23:47 ` [POC][PATCH 62/83] m68k: switch pte_alloc_one_kernel() " Al Viro
2015-12-21 23:47 ` [POC][PATCH 63/83] switch kvmppc_core_vcpu_create_pr() " Al Viro
2015-12-21 23:47 ` [POC][PATCH 64/83] drivers/video/fbdev: switch to get_free_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 65/83] um: switch to get_free_page() Al Viro
2015-12-21 23:47 ` [POC][PATCH 66/83] switch xen_get_swiotlb_free_pages() to returning a pointer Al Viro
2015-12-21 23:47 ` [POC][PATCH 67/83] mn10300 dma_alloc_coherent(): switch to get_free_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 68/83] switch ps3_dma_map() and ps3_dma_region_ops->map() instances to physical address Al Viro
2015-12-21 23:47 ` [POC][PATCH 69/83] ps3_alloc_coherent(): get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 70/83] s390_dma_alloc(): page_to_phys() result is always a multiple of PAGE_SIZE Al Viro
2015-12-21 23:47 ` [POC][PATCH 71/83] s390_dma_alloc(): use page_address() Al Viro
2015-12-21 23:47 ` [POC][PATCH 72/83] [powerpc] switch cmm_page_array->pages[] to pointers Al Viro
2015-12-21 23:47 ` [POC][PATCH 73/83] niu.c: get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 74/83] [s390] switch pcpu_alloc_lowcore() to get_free_page() Al Viro
2015-12-21 23:47 ` [POC][PATCH 75/83] kill __get_free_page() Al Viro
2015-12-21 23:47 ` [POC][PATCH 76/83] [mips, s390, score] turn empty_zero_page into pointer Al Viro
2015-12-21 23:47 ` [POC][PATCH 77/83] sparc: switch to get_free_pages() Al Viro
2015-12-21 23:47 ` [POC][PATCH 78/83] x86: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 79/83] s390: turn suspend_zero_pages into a pointer Al Viro
2015-12-21 23:47 ` [POC][PATCH 80/83] [sun3] try to sort dvma types out Al Viro
2015-12-21 23:47 ` [POC][PATCH 81/83] sba_iommu: get rid of pointless casts Al Viro
2015-12-21 23:47 ` [POC][PATCH 82/83] media/platform/omap: " Al Viro
2015-12-21 23:47 ` [POC][PATCH 83/83] nios2: " Al Viro
2015-12-22 0:03 ` [RFC] free_pages stuff Linus Torvalds
2015-12-22 1:04 ` Al Viro
[not found] ` <CA+55aFy9NrV_RnziN9z3p5O6rv1A0mirhLD0hL7Wrb77+YyBeg@mail.gmail.com>
2015-12-22 1:23 ` Linus Torvalds
2015-12-22 3:10 ` Al Viro
2015-12-22 2:22 ` Al Viro
2015-12-22 8:21 ` Geert Uytterhoeven
2015-12-22 21:04 ` Al Viro
2016-01-05 13:59 ` Michal Hocko
2016-01-05 15:26 ` Al Viro
2016-01-05 15:42 ` Michal Hocko
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1450741676-5865-30-git-send-email-viro@ZenIV.linux.org.uk \
--to=viro@zeniv.linux.org.uk \
--cc=linux-kernel@vger.kernel.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®