This service will be undergoing maintenance at 00:00 UTC, 2017-10-23 It is expected to last about 30 minutes
Bug 57816 - Network interface never comes up after resume on laptop.
Network interface never comes up after resume on laptop.
Status: CLOSED RAWHIDE
Product: Red Hat Linux
Classification: Retired
Component: apmd (Show other bugs)
7.2
i686 Linux
medium Severity medium
: ---
: ---
Assigned To: Bernhard Rosenkraenzer
Aaron Brown
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2001-12-24 15:12 EST by Werner Puschitz
Modified: 2007-04-18 12:38 EDT (History)
1 user (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2002-01-24 17:54:11 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Werner Puschitz 2001-12-24 15:12:31 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.7) Gecko/20011221

Description of problem:
Since I upgraded my IBM Thinkpad 390X from 6.2 to 7.1 and now to 7.2,
I'm having problems with the network card when I close/open
(suspend/resume) my laptop. The network interface never comes up after
resume.

Version-Release number of selected component (if applicable):


How reproducible:
Always

Steps to Reproduce:
See Description.

Actual Results:  See Description.

Expected Results:  See Description.

Additional info:

Here is a fix for the problem and a few comments:

1)
According to the comments in /etc/sysconfig/apmd, shouldn't the
variable PCMCIARESTART also be set to "yes" like this is done for
PCMCIABIOSBUG?

2) 
The following "if clause" for suspend in
/etc/sysconfig/apm-scripts/apmscript does not look right to me:

   [ "$PCMCIARESTART" = "yes" ] && {
                if [ "$PCMCIABIOSBUG" = "yes" ]; then
                        /sbin/cardctl eject
                else
                        /sbin/cardctl suspend
                fi

Only if both, $PCMCIARESTART _and_ $PCMCIABIOSBUG are set to "yes", 
the card will be ejected. Souldn't it be ejected if either 
$PCMCIARESTART _or_ $PCMCIABIOSBUG is set to "yes"?
Changing this clause from AND to OR fixed my problem with getting 
the network interface (ethernet card) working again after suspend/resume.

3)
Also, the following "if clause" for resume in
/etc/sysconfig/apm-scripts/apmscript does not look right to me either:

   if [ "$PCMCIARESTART" = "yes" ] ; then
            if [ "$PCMCIABIOSBUG" = "yes" ]; then
                    /sbin/cardctl insert
            else
                    /sbin/cardctl resume
            fi
   fi

This clause is basically doing the same like above - only if both,
$PCMCIARESTART _and_ "$PCMCIABIOSBUG are set to "yes", the card 
will be ejected. But...

4)
I also noticed that /sbin/cardctl doesn't actually need to be executed 
at all during resume on my laptop since the cardmgr daemon seems to 
notice it anyway that the card needs to be "inserted" again.
I debugged the apmscript on my laptop and it has shown that
suspend/resume works fine (network interfaces are coming up
successfully) when
  -) the card gets ejected (via "/sbin/cardctl eject") by this scripts
     during suspend, _and_
  -) when "/sbin/cardctl insert" and "/sbin/cardctl resume" do _not_
     get executed during resume.

So cardmgr seems to take care of it and it seems that 
"/sbin/cardctl insert" and "sbin/cardctl resume" are not needed during
resume.

Regards,
Werner
Comment 1 Bernhard Rosenkraenzer 2002-02-26 12:20:12 EST
 Fixed in the current version.

Note You need to log in before you can comment on or make changes to this bug.