Comments (4)
Thanks for filing the issue. I tested mostly on the BBB and RPi 1 and may have been running as root (I don't recall). My expectation is that the export would be a synchronous operation, but you clearly have some evidence to the contrary. Maybe changing of permissions is handled outside of the kernel by something like udev? I'll have to research a bit more.
from rust-sysfs-gpio.
You are right, permissions are changed by udev, the rules are in /lib/udev/rules.d/60-python3-pifacecommon.rules and /lib/udev/rules.d/60-python-pifacecommon.rules files.
from rust-sysfs-gpio.
Ok, given that this is udev, I think I will update the example for greater compatibility and add a comment to the code stating that you may need a delay (or to poll for appropriate stat on some file). I don't think a change to the library core to add a delay would be appropriate as many systems would not be setup in the same way.
from rust-sysfs-gpio.
I agree that this library should not need to handle delays caused by udev.
from rust-sysfs-gpio.
Related Issues (20)
- Pin can be exported twice HOT 4
- Integrate mio support HOT 4
- Non blocking interrupt HOT 1
- Permission denied on first run HOT 3
- Make operations on pins take mutable reference HOT 1
- Doesn't build on OSX HOT 2
- Bad performance HOT 7
- Write performance is slow HOT 5
- Sysfs interface for GPIO is now deprecated HOT 5
- Pin number documentation HOT 3
- Level-triggered interrupt HOT 1
- Incompatible with tokio crate HOT 2
- Tokio doesn't support Rust 1.21.0 HOT 1
- async/.await support - "How to" discussion HOT 1
- Allow compilation to wasm32-wasi target HOT 2
- MSRV build on CI is broken due to dependencies
- Migrate to tokio 1.x HOT 3
- non async io in async code
- Upstream deprecation
- Fix CI HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rust-sysfs-gpio.