Re: Kernel v3.2 used in SlackWare 14.00 please, backport all needed patches Re: [PATCH net, 1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-05-27 Thread Ben Hutchings
On Thu, 2013-05-23 at 16:14 +0300, Victor Miasnikov wrote:
> Hi!
> 
> > (the 3.2 version is different,
> > and it's instaging. (at not used by distros anyway))
> 
>  No: used
> 
> Linux Kernel v3.2 used in:
> -- SlackWare 14.00
> 
> This is actual stable version SlackWare
> 
> Please, backport all(!) needed patches
[...]
> P.P.P.P.P.S.
> 
> Sorry, if my msg not full "political correct"
> 
> I preffered solve problem as possibily earler, what wait big problems
> 
> Sorry, again . . .

Please read Documentation/stable_kernel_rules.txt.  In short, you need
to identify the commit hash for each of the changes you want, and
provide the backported patch for any commits that can't simply be
cherry-picked.  I'm not going to read through all of what you wrote to
work out exactly what's needed.

I think Slackware might do better to backport the Hyper-V drivers from
Linux 3.4, as Debian and Ubuntu have done with 3.2-based kernels.  But
that sort of large backport isn't allowed on kernel.org stable branches.

Ben.

-- 
Ben Hutchings
If at first you don't succeed, you're doing about average.


signature.asc
Description: This is a digitally signed message part


RE: [PATCH net, 1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-05-23 Thread Haiyang Zhang


> -Original Message-
> From: Richard Genoud [mailto:richard.gen...@gmail.com]
> Sent: Thursday, May 23, 2013 4:44 AM
> To: Haiyang Zhang
> Cc: da...@davemloft.net; net...@vger.kernel.org; o...@aepfle.de;
> jasow...@redhat.com; linux-kernel@vger.kernel.org;
> de...@linuxdriverproject.org
> Subject: Re: [PATCH net, 1/2] hyperv: Fix a kernel warning from
> netvsc_linkstatus_callback()
> 
> 2013/4/5 Haiyang Zhang :
> > The warning about local_bh_enable inside IRQ happens when
> > disconnecting a virtual NIC.
> >
> > The reason for the warning is -- netif_tx_disable() is called when the
> > NIC is disconnected. And it's called within irq context.
> > netif_tx_disable() calls
> > local_bh_enable() which displays warning if in irq.
> >
> > The fix is to remove the unnecessary netif_tx_disable & wake_queue()
> > in the netvsc_linkstatus_callback().
> >
> > Reported-by: Richard Genoud 
> > Tested-by: Long Li 
> > Tested-by: Richard Genoud 
> > Signed-off-by: Haiyang Zhang 
> > Reviewed-by: K. Y. Srinivasan 
> >
> > ---
> >  drivers/net/hyperv/netvsc_drv.c |2 --
> >  1 files changed, 0 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/net/hyperv/netvsc_drv.c
> > b/drivers/net/hyperv/netvsc_drv.c index 5f85205..8341b62 100644
> > --- a/drivers/net/hyperv/netvsc_drv.c
> > +++ b/drivers/net/hyperv/netvsc_drv.c
> > @@ -241,13 +241,11 @@ void netvsc_linkstatus_callback(struct hv_device
> > *device_obj,
> >
> > if (status == 1) {
> > netif_carrier_on(net);
> > -   netif_wake_queue(net);
> > ndev_ctx = netdev_priv(net);
> > schedule_delayed_work(&ndev_ctx->dwork, 0);
> > schedule_delayed_work(&ndev_ctx->dwork,
> msecs_to_jiffies(20));
> > } else {
> > netif_carrier_off(net);
> > -   netif_tx_disable(net);
> > }
> >  }
> >
> > --
> > 1.7.4.1
> 
> This should also go to the stable tree, shouldn't it ?
> At least 3.8, 3.7 and 3.4 (the 3.2 version is different, and it's in staging. 
> (at not
> used by distros anyway))

Cc: stable 

I agree. Adding sta...@kernel.org to Cc list.

Thanks,
- Haiyang

N�r��yb�X��ǧv�^�)޺{.n�+{zX����ܨ}���Ơz�&j:+v���zZ+��+zf���h���~i���z��w���?�&�)ߢf��^jǫy�m��@A�a���
0��h���i

Kernel v3.2 used in SlackWare 14.00 please, backport all needed patches Re: [PATCH net, 1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-05-23 Thread Victor Miasnikov

Hi!


(the 3.2 version is different,
and it's instaging. (at not used by distros anyway))


No: used

Linux Kernel v3.2 used in:
-- SlackWare 14.00

This is actual stable version SlackWare

Please, backport all(!) needed patches

I'm download https://www.kernel.org/pub/linux/kernel/v3.x/linux-3.2.45.tar.xz

File ata_piix.c ( SHA1 ceaf441142ad3f6768ff71f023e73d0695458e2c ) from
./linux-3.2.45/drivers/ata/
not contain:
( even not contain sub-string "Hyper-V")
== ( VVM: symbol TAB replaced by Space+Space -- special for users of MS IE, MS 
OutLook [Express] )
static int prefer_ms_hyperv = 1;
module_param(prefer_ms_hyperv, int, 0);
MODULE_PARM_DESC(prefer_ms_hyperv,
 "Prefer Hyper-V paravirtualization drivers instead of ATA, "
 "0 - Use ATA drivers, "
 "1 (Default) - Use the paravirtualization drivers.");

static void piix_ignore_devices_quirk(struct ata_host *host)
{
#if IS_ENABLED(CONFIG_HYPERV_STORAGE)
 static const struct dmi_system_id ignore_hyperv[] = {
   {
 /* On Hyper-V hypervisors the disks are exposed on
  * both the emulated SATA controller and on the
  * paravirtualised drivers.  The CD/DVD devices
  * are only exposed on the emulated controller.
  * Request we ignore ATA devices on this host.
  */
 .ident = "Hyper-V Virtual Machine",
 .matches = {
   DMI_MATCH(DMI_SYS_VENDOR,
   "Microsoft Corporation"),
   DMI_MATCH(DMI_PRODUCT_NAME, "Virtual Machine"),
 },
   },
   { }  /* terminate list */
 };
 static const struct dmi_system_id allow_virtual_pc[] = {
   {
 /* In MS Virtual PC guests the DMI ident is nearly
  * identical to a Hyper-V guest. One difference is the
  * product version which is used here to identify
  * a Virtual PC guest. This entry allows ata_piix to
  * drive the emulated hardware.
  */
 .ident = "MS Virtual PC 2007",
 .matches = {
   DMI_MATCH(DMI_SYS_VENDOR,
   "Microsoft Corporation"),
   DMI_MATCH(DMI_PRODUCT_NAME, "Virtual Machine"),
   DMI_MATCH(DMI_PRODUCT_VERSION, "VS2005R2"),
 },
   },
   { }  /* terminate list */
 };
 const struct dmi_system_id *ignore = dmi_first_match(ignore_hyperv);
 const struct dmi_system_id *allow = dmi_first_match(allow_virtual_pc);

 if (ignore && !allow && prefer_ms_hyperv) {
   host->flags |= ATA_HOST_IGNORE_ATA;
   dev_info(host->dev, "%s detected, ATA device ignore set\n",
 ignore->ident);
 }
#endif
==


_Absolutly_ ( as _minimum_ for SlackWare 14.00 ) need backport requested at 
2012-06-08(!) :
( look on sub-string "3.2")
==
- Original Message - 
From: "Victor Miasnikov"

To: "Greg KH" ; "Jonathan Nieder" ; "Andy Whitcroft"
Cc: ; ; "KY Srinivasan"; "Mike 
Sterling"
Sent: Friday, June 08, 2012 1:36 PM
Subject: Re: Re: ToDo: backport to v3.4 , v3.3 , v3.2 patches 1b) db63a4c8115a 
libata 1) cd006086fa5d ata_piix: defer
disks to the Hyper-V drivers by default Fw: use hv_storvsc instead of ata_piix 
for IDE disks ( but not for the CD-ROM)

. . .

{

> > Hyper-V admins need _worked_ Linux v3.4.X / v3.3.X / v3.2.X
> > Please, _fix_ errors related "use hv_storvsc instead of ata_piix to
> > handle the IDE disks devices ( but not for the CD-ROM)"


 i.e. need backport to all actual version after 3.1

 cd006086fa5d ata_piix: defer disks to the Hyper-V drivers by default

and its prerequisite

 db63a4c8115a libata: add a host flag to ignore detected ATA devices
}
==

and not forget patch related Bug 52821 :

{{
== ==
- Original Message - 
From: vvm

To: Andreas
Sent: Wednesday, January 30, 2013 4:20 PM
Subject: FIXed: ef773e1..bec35f4 Re: ata_piix.prefer_ms_hyperv=0 works Fw: Bug 
52821 - ata_piix ATA_HOST_IGNORE_ATA for
Hyper-V also affects Virtual PC 7 
https://bugzilla.novell.com/show_bug.cgi?id=737532 Or
https://bugzilla.kernel.org/show_bug.cgi?id=52821


Hi!

Short:


Still, if there is a way to cleanly identify Hyper-V but not Virtual PC 7, this 
would be great!


FIXed: ef773e1..bec35f4

Write in
https://bugzilla.kernel.org/show_bug.cgi?id=52821

"please, backport to 3.4 . . . 3.6 . . . 3.7"

  . . .

Full:



(
. . .


Still, if there is a way to cleanly identify Hyper-V but not Virtual PC 7, this 
would be great!


FIXed: ef773e1..bec35f4


- Original Message - 
From: "Jeff Garzik"

To: "Olaf Hering"
Cc:  . . . ; "KY Srinivasan"
Sent: Wednesday, November 28, 2012 8:44 PM
Subject: Re: [PATCH] ata_piix: reenable MS Virtual PC guests

On 09/18/2012 11:48 AM, Olaf Hering wrote:
An earlier commit cd006086fa5d91414d8ff9ff2b78fbb593878e3c ("ata_piix:
defer disks to the Hyper-V drivers by default") broke MS Virtual PC
guests. Hyper-V guests and Virtual PC guests have nearly identical DMI
info. As a result the driver does currently ignore the emulated hardware
in Virtual PC guests and defers the handling to hv_blkvsc [ VVM: in current ver 
kernel -- hv_storvsc ]  . Since Virtual
PC does not offer paravirtualized drivers no disks will be found in the
guest.

One difference in the DMI info is the product version. This 

Re: [PATCH net, 1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-05-23 Thread Richard Genoud
2013/4/5 Haiyang Zhang :
> The warning about local_bh_enable inside IRQ happens when disconnecting a
> virtual NIC.
>
> The reason for the warning is -- netif_tx_disable() is called when the NIC
> is disconnected. And it's called within irq context. netif_tx_disable() calls
> local_bh_enable() which displays warning if in irq.
>
> The fix is to remove the unnecessary netif_tx_disable & wake_queue() in the
> netvsc_linkstatus_callback().
>
> Reported-by: Richard Genoud 
> Tested-by: Long Li 
> Tested-by: Richard Genoud 
> Signed-off-by: Haiyang Zhang 
> Reviewed-by: K. Y. Srinivasan 
>
> ---
>  drivers/net/hyperv/netvsc_drv.c |2 --
>  1 files changed, 0 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
> index 5f85205..8341b62 100644
> --- a/drivers/net/hyperv/netvsc_drv.c
> +++ b/drivers/net/hyperv/netvsc_drv.c
> @@ -241,13 +241,11 @@ void netvsc_linkstatus_callback(struct hv_device 
> *device_obj,
>
> if (status == 1) {
> netif_carrier_on(net);
> -   netif_wake_queue(net);
> ndev_ctx = netdev_priv(net);
> schedule_delayed_work(&ndev_ctx->dwork, 0);
> schedule_delayed_work(&ndev_ctx->dwork, msecs_to_jiffies(20));
> } else {
> netif_carrier_off(net);
> -   netif_tx_disable(net);
> }
>  }
>
> --
> 1.7.4.1

This should also go to the stable tree, shouldn't it ?
At least 3.8, 3.7 and 3.4 (the 3.2 version is different, and it's in
staging. (at not used by distros anyway))


Richard.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


Re: [PATCH net,1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-04-08 Thread David Miller
From: Haiyang Zhang 
Date: Fri,  5 Apr 2013 14:44:39 -0700

> The warning about local_bh_enable inside IRQ happens when disconnecting a
> virtual NIC.
> 
> The reason for the warning is -- netif_tx_disable() is called when the NIC
> is disconnected. And it's called within irq context. netif_tx_disable() calls
> local_bh_enable() which displays warning if in irq.
> 
> The fix is to remove the unnecessary netif_tx_disable & wake_queue() in the
> netvsc_linkstatus_callback().
> 
> Reported-by: Richard Genoud 
> Tested-by: Long Li 
> Tested-by: Richard Genoud 
> Signed-off-by: Haiyang Zhang 
> Reviewed-by: K. Y. Srinivasan 

Applied.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/


[PATCH net,1/2] hyperv: Fix a kernel warning from netvsc_linkstatus_callback()

2013-04-05 Thread Haiyang Zhang
The warning about local_bh_enable inside IRQ happens when disconnecting a
virtual NIC.

The reason for the warning is -- netif_tx_disable() is called when the NIC
is disconnected. And it's called within irq context. netif_tx_disable() calls
local_bh_enable() which displays warning if in irq.

The fix is to remove the unnecessary netif_tx_disable & wake_queue() in the
netvsc_linkstatus_callback().

Reported-by: Richard Genoud 
Tested-by: Long Li 
Tested-by: Richard Genoud 
Signed-off-by: Haiyang Zhang 
Reviewed-by: K. Y. Srinivasan 

---
 drivers/net/hyperv/netvsc_drv.c |2 --
 1 files changed, 0 insertions(+), 2 deletions(-)

diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c
index 5f85205..8341b62 100644
--- a/drivers/net/hyperv/netvsc_drv.c
+++ b/drivers/net/hyperv/netvsc_drv.c
@@ -241,13 +241,11 @@ void netvsc_linkstatus_callback(struct hv_device 
*device_obj,
 
if (status == 1) {
netif_carrier_on(net);
-   netif_wake_queue(net);
ndev_ctx = netdev_priv(net);
schedule_delayed_work(&ndev_ctx->dwork, 0);
schedule_delayed_work(&ndev_ctx->dwork, msecs_to_jiffies(20));
} else {
netif_carrier_off(net);
-   netif_tx_disable(net);
}
 }
 
-- 
1.7.4.1

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/