I've said it before, and I'll say it again: the part of my job that most prohibits me from being productive and agile is JIRA. However, I don't think that the tool's linearity is the issue, at least not in my workplace.
The interface is just really hard to use. I regularly lose tickets and have no idea how to find them, resorting to searching my email. The things I use most are usually hidden under an inconspicuous drop down. There are multiple ways to view a ticket, but you can only do certain operations on the ticket in certain views.
The other problem, which isn't unique to JIRA, is that (for devs, at least) time estimation isn't possible. The things that take up the vast majority of our time are when something isn't working the way we expected, and we have to troubleshoot. So in our estimates, we end up doing stuff like doubling how long it would take if everything goes the way we expect. The result is that my estimates are rarely accurate, yet I spend time every day updating them.