[PATCH V3] cxl: Export library to support IBM XSL

Frederic Barrat fbarrat at linux.vnet.ibm.com
Thu Jun 22 22:25:51 AEST 2017


Salut Christophe,

Since there's a respin, 2 details below.


> diff --git a/drivers/misc/cxl/cxllib.c b/drivers/misc/cxl/cxllib.c
> new file mode 100644
> index 0000000..4f4c5ca
> --- /dev/null
> +++ b/drivers/misc/cxl/cxllib.c
> @@ -0,0 +1,246 @@
> +/*
> + * Copyright 2017 IBM Corp.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License
> + * as published by the Free Software Foundation; either version
> + * 2 of the License, or (at your option) any later version.
> + */
> +
> +#include <asm/pnv-pci.h>
> +#include <linux/hugetlb.h>
> +#include <linux/sched/mm.h>
> +#include <misc/cxllib.h>

Maybe somebody can comment on this, but I believe the usual order is the 
'linux' headers first, then the 'asm'. Though I don't know if there's a 
valid reason behind it, or just tradition...


> diff --git a/drivers/misc/cxl/fault.c b/drivers/misc/cxl/fault.c
> index c79e39b..077370f 100644
> --- a/drivers/misc/cxl/fault.c
> +++ b/drivers/misc/cxl/fault.c

> +static int cxl_handle_page_fault(struct cxl_context *ctx,
> +				 struct mm_struct *mm,
> +				 u64 dsisr, u64 dar)
> +{
> +	trace_cxl_pte_miss(ctx, dsisr, dar);
> +
> +	if (cxl_handle_mm_fault(mm, dsisr, dar)) {
> +		cxl_ack_ae(ctx);
> +	} else {
> +		pr_devel("Page fault successfully handled for pe: %i!\n", ctx->pe);
> +		cxl_ops->ack_irq(ctx, CXL_PSL_TFC_An_R, 0);
> +	}
> +
> +	return IRQ_HANDLED;
>   }

Why return IRQ_HANDLED? it's not called from an interrupt handler but 
from the bottom half (actually, I think it's coming from 
cxl_handle_segment_miss(), but it's wrong there as well).

   Fred



More information about the Linuxppc-dev mailing list