From: Jason <lcprog@lakedaemon.net>
To: linux-c-programming@vger.kernel.org
Subject: Re: select() / inotify / sysfs
Date: Wed, 19 Mar 2008 17:10:45 -0400 [thread overview]
Message-ID: <47E18155.2020800@lakedaemon.net> (raw)
In-Reply-To: <47DFE6ED.9030908@lakedaemon.net>
Jason wrote:
> All,
>
> I've discovered that my physical environment causes intermittent wifi
> connectivity (drops for a few seconds, then returns). My program can
> work through this, but needs to know that the connection has been
> interrupted.
>
> I've placed a watch on different files in /sys/class/net/ath0/* and
> found that operstate changes (from 'up' to 'down') when I experience
> these network drops. So, I used inotify to detect changes to the file
> as a proof of concept:
>
> # inotifywatch -v -r /sys/class/net/ath0/operstate
>
> No go. It detects when I cat the file, but doesn't detect when the
> kernel changes it (which make sense on an academic note, since it
> doesn't have a value until it's read by userspace).
>
> So, does anyone know of a good (hopefully select() based) method to
> detect this change? It doesn't have to use sysfs, that's just the
> dragon I'm chasing right now. ;-) I'd really prefer not to poll the
> file...
Update since vger is backup. I tried netlink also, and it only reports
IFF_UP changes (I've only tried RTMGRP_LINK/NETLINK_ROUTE so far). So
it tells me when I do ifconfig ath0 [up|down], but doesn't trigger when
operstate changes and the interface is still up (IFF_UP).
Any ideas?
thx,
Jason.
prev parent reply other threads:[~2008-03-19 21:10 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-03-18 15:59 select() / inotify / sysfs Jason
2008-03-19 21:10 ` Jason [this message]
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=47E18155.2020800@lakedaemon.net \
--to=lcprog@lakedaemon.net \
--cc=linux-c-programming@vger.kernel.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;
as well as URLs for NNTP newsgroup(s).