An error occurred fetching the project authors.
  1. 17 Jul, 2012 3 commits
  2. 13 Jul, 2012 1 commit
    • Johannes Berg's avatar
      cfg80211: reduce monitor interface tracking · 4290cb4b
      Johannes Berg authored
      Revert commit b78e8cea
      ("cfg80211: track monitor channel") and remove the
      set_monitor_enabled() callback.
      
      Due to the tracking happening in NETDEV_PRE_UP, it had
      introduced bugs because the monitor interface callback
      would be called before the device was started. It looks
      like there's no way to fix this, and using NETDEV_PRE_UP
      is broken anyway (since there's no NETDEV_UP_FAIL), so
      remove all that code, track interfaces in NETDEV_UP and
      also stop tracking the monitor channel in cfg80211.
      
      This mostly reverts to before the tracking, except that
      we keep the interface count tracking so that setting the
      monitor channel can be rejected properly.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      4290cb4b
  3. 12 Jul, 2012 1 commit
  4. 09 Jul, 2012 2 commits
  5. 08 Jul, 2012 1 commit
  6. 04 Jul, 2012 1 commit
  7. 02 Jul, 2012 1 commit
  8. 29 Jun, 2012 6 commits
  9. 27 Jun, 2012 1 commit
  10. 20 Jun, 2012 1 commit
  11. 16 May, 2012 1 commit
  12. 16 Apr, 2012 1 commit
    • Johannes Berg's avatar
      cfg80211: enforce lack of interface combinations · 8e8b41f9
      Johannes Berg authored
      My grand plan to allow drivers to gradually move over
      to advertising virtual interface combinations and only
      enforce with drivers that do want it enforced doesn't
      seem to be working out, only Christian ever added the
      advertising (to carl9170), nobody else did.
      
      Begin enforcing combinations in cfg80211 so that users
      can rely on the information reported about a device.
      
      Cc: "Luis R. Rodriguez" <mcgrof@qca.qualcomm.com>
      Cc: Jouni Malinen <jouni@qca.qualcomm.com>
      Cc: Vasanthakumar Thiagarajan <vthiagar@qca.qualcomm.com>
      Cc: Senthil Balasubramanian <senthilb@qca.qualcomm.com>
      Cc: Kalle Valo <kvalo@qca.qualcomm.com>
      Cc: Jiri Slaby <jirislaby@gmail.com>
      Cc: Nick Kossifidis <mickflemm@gmail.com>
      Cc: Bob Copeland <me@bobcopeland.com>
      Cc: Bing Zhao <bzhao@marvell.com>
      Cc: Lennert Buytenhek <buytenh@wantstofly.org>
      Cc: Ivo van Doorn <IvDoorn@gmail.com>
      Cc: Gertjan van Wingerde <gwingerde@gmail.com>
      Cc: Helmut Schaa <helmut.schaa@googlemail.com>
      Cc: Luciano Coelho <coelho@ti.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      8e8b41f9
  13. 11 Apr, 2012 1 commit
  14. 09 Nov, 2011 1 commit
  15. 14 Sep, 2011 1 commit
  16. 22 Aug, 2011 1 commit
    • Stanislaw Gruszka's avatar
      mac80211: fix suspend/resume races with unregister hw · ecb44335
      Stanislaw Gruszka authored
      Do not call ->suspend, ->resume methods after we unregister wiphy. Also
      delete sta_clanup timer after we finish wiphy unregister to avoid this:
      
      WARNING: at lib/debugobjects.c:262 debug_print_object+0x85/0xa0()
      Hardware name: 6369CTO
      ODEBUG: free active (active state 0) object type: timer_list hint: sta_info_cleanup+0x0/0x180 [mac80211]
      Modules linked in: aes_i586 aes_generic fuse bridge stp llc autofs4 sunrpc cpufreq_ondemand acpi_cpufreq mperf ext2 dm_mod uinput thinkpad_acpi hwmon sg arc4 rt2800usb rt2800lib crc_ccitt rt2x00usb rt2x00lib mac80211 cfg80211 i2c_i801 iTCO_wdt iTCO_vendor_support e1000e ext4 mbcache jbd2 sd_mod crc_t10dif sr_mod cdrom yenta_socket ahci libahci pata_acpi ata_generic ata_piix i915 drm_kms_helper drm i2c_algo_bit video [last unloaded: microcode]
      Pid: 5663, comm: pm-hibernate Not tainted 3.1.0-rc1-wl+ #19
      Call Trace:
       [<c0454cfd>] warn_slowpath_common+0x6d/0xa0
       [<c05e05e5>] ? debug_print_object+0x85/0xa0
       [<c05e05e5>] ? debug_print_object+0x85/0xa0
       [<c0454dae>] warn_slowpath_fmt+0x2e/0x30
       [<c05e05e5>] debug_print_object+0x85/0xa0
       [<f8a808e0>] ? sta_info_alloc+0x1a0/0x1a0 [mac80211]
       [<c05e0bd2>] debug_check_no_obj_freed+0xe2/0x180
       [<c051175b>] kfree+0x8b/0x150
       [<f8a126ae>] cfg80211_dev_free+0x7e/0x90 [cfg80211]
       [<f8a13afd>] wiphy_dev_release+0xd/0x10 [cfg80211]
       [<c068d959>] device_release+0x19/0x80
       [<c05d06ba>] kobject_release+0x7a/0x1c0
       [<c07646a8>] ? rtnl_unlock+0x8/0x10
       [<f8a13adb>] ? wiphy_resume+0x6b/0x80 [cfg80211]
       [<c05d0640>] ? kobject_del+0x30/0x30
       [<c05d1a6d>] kref_put+0x2d/0x60
       [<c05d056d>] kobject_put+0x1d/0x50
       [<c08015f4>] ? mutex_lock+0x14/0x40
       [<c068d60f>] put_device+0xf/0x20
       [<c069716a>] dpm_resume+0xca/0x160
       [<c04912bd>] hibernation_snapshot+0xcd/0x260
       [<c04903df>] ? freeze_processes+0x3f/0x90
       [<c049151b>] hibernate+0xcb/0x1e0
       [<c048fdc0>] ? pm_async_store+0x40/0x40
       [<c048fe60>] state_store+0xa0/0xb0
       [<c048fdc0>] ? pm_async_store+0x40/0x40
       [<c05d0200>] kobj_attr_store+0x20/0x30
       [<c0575ea4>] sysfs_write_file+0x94/0xf0
       [<c051e26a>] vfs_write+0x9a/0x160
       [<c0575e10>] ? sysfs_open_file+0x200/0x200
       [<c051e3fd>] sys_write+0x3d/0x70
       [<c080959f>] sysenter_do_call+0x12/0x28
      
      Cc: stable@kernel.org
      Signed-off-by: default avatarStanislaw Gruszka <sgruszka@redhat.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      ecb44335
  17. 20 Jul, 2011 1 commit
  18. 15 Jul, 2011 1 commit
  19. 05 Jul, 2011 1 commit
    • Luciano Coelho's avatar
      cfg80211: fix deadlock with rfkill/sched_scan by adding new mutex · c10841ca
      Luciano Coelho authored
      There was a deadlock when rfkill-blocking a wireless interface,
      because we were locking the rdev mutex on NETDEV_GOING_DOWN to stop
      sched_scans that were eventually running.  The rfkill block code was
      already holding a mutex under rdev:
      
      kernel: =======================================================
      kernel: [ INFO: possible circular locking dependency detected ]
      kernel: 3.0.0-rc1-00049-g1fa7b6a2 #57
      kernel: -------------------------------------------------------
      kernel: kworker/0:1/4525 is trying to acquire lock:
      kernel: (&rdev->mtx){+.+.+.}, at: [<ffffffff8164c831>] cfg80211_netdev_notifier_call+0x131/0x5b0
      kernel:
      kernel: but task is already holding lock:
      kernel: (&rdev->devlist_mtx){+.+.+.}, at: [<ffffffff8164dcef>] cfg80211_rfkill_set_block+0x4f/0xa0
      kernel:
      kernel: which lock already depends on the new lock.
      
      To fix this, add a new mutex specifically for sched_scan, to protect
      the sched_scan_req element in the rdev struct, instead of using the
      global rdev mutex.
      Reported-by: default avatarDuane Griffin <duaneg@dghda.com>
      Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      c10841ca
  20. 16 May, 2011 1 commit
    • Johannes Berg's avatar
      cfg80211: advertise possible interface combinations · 7527a782
      Johannes Berg authored
      Add the ability to advertise interface combinations in nl80211.
      This allows the driver to indicate what the combinations are
      that it supports. "Combinations" of just a single interface are
      implicit, as previously. Note that cfg80211 will enforce that
      the restrictions are met, but not for all drivers yet (once all
      drivers are updated, we can remove the flag and enforce for all).
      
      When no combinations are actually supported, an empty list will
      be exported so that userspace can know if the kernel exported
      this info or not (although it isn't clear to me what tools using
      the info should do if the kernel didn't export it).
      
      Since some interface types are purely virtual/software and don't
      fit the restrictions, those are exposed in a new list of pure SW
      types, not subject to restrictions. This mainly exists to handle
      AP-VLAN and monitor interfaces in mac80211.
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      7527a782
  21. 12 May, 2011 2 commits
  22. 11 May, 2011 1 commit
    • Luciano Coelho's avatar
      cfg80211/nl80211: add support for scheduled scans · 807f8a8c
      Luciano Coelho authored
      Implement new functionality for scheduled scan offload.  With this feature we
      can scan automatically at certain intervals.
      
      The idea is that the hardware can perform scan automatically and filter on
      desired results without waking up the host unnecessarily.
      
      Add NL80211_CMD_START_SCHED_SCAN and NL80211_CMD_STOP_SCHED_SCAN
      commands to the nl80211 interface.  When results are available they are
      reported by NL80211_CMD_SCHED_SCAN_RESULTS events.  The userspace is
      informed when the scheduled scan has stopped with a
      NL80211_CMD_SCHED_SCAN_STOPPED event, which can be triggered either by
      the driver or by a call to NL80211_CMD_STOP_SCHED_SCAN.
      Signed-off-by: default avatarLuciano Coelho <coelho@ti.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      807f8a8c
  23. 05 May, 2011 1 commit
  24. 25 Apr, 2011 1 commit
  25. 03 Feb, 2011 1 commit
    • Juuso Oikarinen's avatar
      cfg80211: Fix power save state after interface type change · bf6a0579
      Juuso Oikarinen authored
      Currently cfg80211 only configures the PSM state to the driver upon creation
      of a new virtual interface, but not after interface type change. The mac80211
      on the other hand reinitializes its sdata structure every time the interface
      type is changed, losing the PSM configuration.
      
      Hence, if the interface type is changed to, say, ad-hoc and then back to
      managed, "iw wlan0 get power_save" will claim that PSM is enabled, when in
      fact on mac80211 level it is not.
      
      Fix this in cfg80211 by configuring the PSM state to the driver each time
      the interface is brought up instead of just when the interface is created.
      Signed-off-by: default avatarJuuso Oikarinen <juuso.oikarinen@nokia.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      bf6a0579
  26. 20 Dec, 2010 1 commit
  27. 06 Dec, 2010 1 commit
    • Johannes Berg's avatar
      cfg80211/mac80211: add mesh join/leave commands · 29cbe68c
      Johannes Berg authored
      Instead of tying mesh activity to interface up,
      add join and leave commands for mesh. Since we
      must be backward compatible, let cfg80211 handle
      joining a mesh if a mesh ID was pre-configured
      when the device goes up.
      
      Note that this therefore must modify mac80211 as
      well since mac80211 needs to lose the logic to
      start the mesh on interface up.
      
      We now allow querying mesh parameters before the
      mesh is connected, which simply returns defaults.
      Setting them (internally renamed to "update") is
      only allowed while connected. Specify them with
      the new mesh join command instead where needed.
      
      In mac80211, beaconing must now also follow the
      mesh enabled/not enabled state, which is done
      by testing the mesh ID.
      Signed-off-by: default avatarJavier Cardona <javier@cozybit.com>
      Signed-off-by: default avatarJohannes Berg <johannes.berg@intel.com>
      Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
      29cbe68c
  28. 24 Nov, 2010 1 commit
  29. 11 Oct, 2010 1 commit
  30. 05 Oct, 2010 1 commit
  31. 16 Sep, 2010 1 commit